2009-10-01 13 views
10

Una volta che hai imparato i comandi di base in Python, spesso sei in grado di risolvere la maggior parte dei problemi di programmazione che devi affrontare. Ma il modo in cui ciò viene fatto non è in realtà Python-ic. Ciò che è comune è usare la classica mentalità C++ o Java per risolvere i problemi. Ma Python è più di questo. Ha una programmazione funzionale incorporata; molte librerie disponibili; orientato agli oggetti e ai suoi modi. In breve ci sono spesso modi migliori, più brevi, più veloci, più eleganti per la stessa cosa.Come posso parlare correttamente in Python?

È un po 'come imparare una nuova lingua. Prima impari le parole e la grammatica, ma poi devi essere fluente.

Una volta imparata la lingua, come si fa a parlare in Python? Come è stato effettuato il ? Quali libri hanno maggiormente aiutato?

+8

Pratica, pratica, pratica. –

+2

Pratica cosa? Cosa significa? –

+1

sorpreso che questa domanda non sia stata chiusa dalla comunità SO :) – ajay

risposta

10

Leggi il codice di altre persone. Scrivi un po 'del tuo codice. Ripeti per un anno o due.

Studiare la documentazione di Python e imparare i moduli incorporati.

Leggi Python in breve.

Sottoscrivi il tuo lettore RSS al tag Python su Stack Overflow.

2

Immagino che diventare fluente in qualsiasi linguaggio di programmazione sia lo stesso che parlare fluentemente in una lingua parlata/scritta. Lo fai parlando e ascoltando la lingua, molto.

Quindi il mio consiglio è di fare alcuni progetti usando python, e presto vi parlerete fluentemente. Puoi completarlo leggendo il codice di altre persone che hanno maggiore esperienza nella lingua per vedere come risolvono determinati problemi.

3

Allo stesso modo in cui si parla in qualsiasi lingua, programma molto.

Consiglierei di lavorare su un progetto (si spera che qualcosa verrà effettivamente utilizzato in seguito). Mentre lavori al progetto, ogni volta che hai bisogno di alcune funzionalità di base, prova a scriverlo da solo, e allo poi allo verificando online come facevano gli altri.

Entrambi consentono di imparare come eseguire effettivamente le operazioni in Python, ma consentono anche di vedere quali sono le controparti "Pythonic" rispetto ai casi di codifica comuni.

3

Ci sono alcuni libri di testo in Python che non solo ti insegnano la lingua, ti insegnano la filosofia della lingua (perché è così com'è) e ti insegnano gli idiomi comuni. Ho imparato dal libro Learning Python per Mark Lutz e lo consiglio.

Se conosci già le basi della lingua, puoi cercare "Idiomi di Python" in Google e troverai alcune gemme.Qui ci sono alcuni:

http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html

http://docs.python.org/dev/howto/doanddont.html

http://jaynes.colorado.edu/PythonIdioms.html

Se avete letto qualche buon codice Python e avere un'idea del motivo per cui è stato scritto il modo in cui era, si può impara cose interessanti. Ecco un recente discussion of modules worth reading per migliorare le tue capacità di codifica Pythonic.

Buona fortuna!

EDIT: Oh, dovrei aggiungere: +1 per Python Cookbook e Alex Martelli. Non ho menzionato questi perché Jon-Eric lo ha già fatto.

5

Altro Pythonic? Inizia con una semplice importazione.

import this 

E aggiungere pratica.

7

Posso dirti cosa ho fatto.

  1. Idiomatic Python
  2. segnalibro SO con la parola chiave pitone.
  3. Leggi altro buon codice python.
  4. The Python Challenge

Questo ordine è probabilmente buono, troppo. Questo è dove le cose si divertono.

+0

Ciao, e grazie. SO sta per stackoverflow? "3. Leggi il buon codice Python di altri." qualsiasi altra fonte eccetto quelle che vengono proposte nell'altra risposta? –

+0

+10 (se potessi) per il ref "Idiomatic Python" di David Goodger! Non l'ho mai letto prima, ma è pieno di gemme - impara queste cose e Pythonic diventerà il tuo codice. (Sì, SO è "stackoverflow".) – PaulMcG

+0

Conosco programmatori Python molto pitonici e programmatori Python molto C++. "Buono" è stata una scelta sbagliata da esprimere per il primo! – physicsmichael

Problemi correlati