Pregunta

Dado que no hay una escritura explícita en python, quiero poder marcar la diferencia entre secuencias y no secuencias utilizando una convención de nomenclatura. He estado programando con Python por un tiempo, y todavía no he encontrado ninguna forma lógica / práctica de nombrar secuencias. Por supuesto, revisé el famoso PEP8 , e hice algunas investigaciones sobre google, y parece que la convención aceptada es agregar la letra "s" al final del nombre de la variable.

Supongamos que tenemos una secuencia de "valores de peso", por lo tanto, el nombre de la variable para la secuencia debe ser pesos . Hasta ahora está bien, pero habrá casos en que alguna palabra termine con " s " y resulta ser la forma más lógica de nombrar una variable que no es una secuencia. O supongamos que tiene secuencias de pesos almacenadas en una secuencia. Las " s " la convención de nomenclatura nombraría la variable ponderaciones , que es fea. Estoy seguro de que habrá una mejor convención de nomenclatura para secuencias.

¿Qué convención de nomenclatura para secuencias recomendaría?

¿Fue útil?

Solución

En general, evite este tipo de comportamiento. Aviso de PEP8

  

Una consistencia tonta es el duende   de pequeñas mentes

que es exactamente lo que haría llamar una variable weightss . Entonces, en general, haga que sus variables describan cuáles son, no de acuerdo con alguna convención de nomenclatura:

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

etc.

De la misma sección de PEP8 :

  

Pero lo más importante: saber cuándo estar   inconsistente - a veces el estilo   La guía simplemente no se aplica. Cuando en   duda, usa tu mejor juicio. Mira   en otros ejemplos y decidir qué   se ve mejor. Y no dudes en   preguntar!

Otros consejos

  

La " s " la convención de nomenclatura nombraría las ponderaciones variables, lo cual es feo. Estoy seguro de que habrá una mejor convención de nomenclatura para secuencias.

Creo que la convención que está describiendo debe interpretarse como "cuando tenga una lista de algo, deje en claro que es una lista al pluralizarla". Por ejemplo, si tiene una lista de instancias de hierba, llamaría a esto gramíneas , no grasss . No creo que deba tomarse tan literalmente como lo estás tomando.

PEP siempre le aconseja que tome su propio enfoque si eso es más legible y útil. Como Ali mencionó , uno de los principios rectores de PEP es que no debes ser presa de tontas consistencias.

Lo que tu pequeño corazón desee ...

Es broma, pero no podría colgarlo. Si es feo, haga algo para hacerlo más legible como seq_weight y seq_weights

¿Por qué no simplemente thing_list o thing_seq ?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top