2010-04-29 5 views
35

De Building Skills in Python:¿Por qué el nombre de los caracteres es mejor que los guiones?

"Un nombre de archivo como exercise_1.py es mejor que el nombre execise-1.py Podemos ejecutar ambos programas igualmente bien desde la línea de comandos, pero el nombre con el guión limita nuestra capacidad para. escribir programas más grandes y sofisticados ".

¿Por qué?

+1

Dicho sea de paso, el autor de ese documento en particular es uno de los que responden Python de alto rango en este sitio: http://stackoverflow.com/users/10661/s-lott –

Respuesta

47

El problema aquí es que la importación de archivos con guiones en su nombre no funciona, ya que los guiones son signos negativos en python. Por lo tanto, si usted tenía su propio módulo usted quiso importar, podría no tener un guión en su nombre:

>>> import test-1 
    File "<stdin>", line 1 
    import test-1 
      ^
SyntaxError: invalid syntax 
>>> import test_1 
>>> 

más grande programas tienden a ser separado de manera lógica en muchos módulos diferentes, por lo tanto, la cita

el nombre con el guión limita nuestra capacidad para escribir programas más grandes y sofisticados.

10

Desde ese mismo documento (P.368, Sección 30.2 'definición del módulo'):

Tenga en cuenta que un nombre de módulo debe ser un nombre válido Python ... El nombre de un módulo se limita a las letras , dígitos y "_" s.

+14

... que es aproximadamente trescientos páginas alejadas del texto que dicen no usar guiones. –

Cuestiones relacionadas