Domanda

Poiché non esiste una digitazione esplicita in Python, voglio essere in grado di fare la differenza tra sequenze e non sequenze usando una convenzione di denominazione. Ho programmato con Python per un po 'di tempo, e non ho ancora trovato alcun modo logico / pratico per nominare le sequenze. Ovviamente, ho analizzato il famoso PEP8 e ho fatto alcune ricerche su google, e sembra che la convenzione accettata sia quella di aggiungere la lettera "quot" alla fine del nome della variabile.

Supponiamo di avere una sequenza di "valori di peso", quindi il nome della variabile per la sequenza dovrebbe essere pesi . Finora va bene, ma ci saranno casi in cui una parola termina con "quot" e capita di essere il modo più logico di nominare una variabile che non è una sequenza. Oppure supponiamo che tu abbia sequenze di pesi stessi memorizzate in una sequenza. La "s" la convenzione di denominazione chiamerebbe la variabile pesi , che è brutta. Sono sicuro che ci sarà una migliore convenzione di denominazione per le sequenze.

Quale convenzione di denominazione per le sequenze consiglieresti?

È stato utile?

Soluzione

In generale, evita questo tipo di comportamento. Avviso da PEP8

  

Una folle coerenza è l'Hobgoblin   of Little Minds

che è esattamente ciò che farebbe chiamare una variabile pesi . Quindi, in generale, le tue variabili descrivono ciò che sono, non secondo una convenzione di denominazione:

weights = [44, 66, 88]
weight_groups = [[44, 66, 88], ...]

ecc.

Dalla stessa sezione del PEP8 :

  

Ma soprattutto: sapere quando essere   incoerente - a volte lo stile   la guida non si applica. Quando dentro   dubbio, usa il tuo miglior giudizio. Guarda   ad altri esempi e decidere cosa   sembra migliore. E non esitare   chiedere!

Altri suggerimenti

  

Il " s " la convenzione di denominazione nominerebbe i pesi variabili, il che è brutto. Sono sicuro che ci sarà una migliore convenzione di denominazione per le sequenze.

Penso che la convenzione che stai descrivendo debba essere interpretata come "ogni volta che hai un elenco di qualcosa, chiarisci che si tratta di un elenco pluralizzandolo". Ad esempio, se disponi di un elenco di istanze di erba, chiameresti questo erbe , non erbe . Non penso che debba essere preso alla lettera come lo stai prendendo.

PEP ti consiglia sempre di adottare il tuo approccio se questo è più leggibile e utile. Come Ali menzionato , uno dei principi guida di PEP è che non dovresti cadere in preda a sciocche coerenze.

Qualunque cosa desideri il tuo cuoricino ....

Sto solo scherzando, ma non potrei riattaccare. Se è brutto, fai qualcosa per renderlo più leggibile come seq_weight e seq_weights

Perché non solo thing_list o thing_seq ?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top