对于文件名,为什么下划线优于连字符?

atp*_*atp 50 python naming

Python中的构建技巧:

"像exercise_1.py这样的文件名比execise-1.py更好.我们可以从命令行同样运行这两个程序,但带连字符的名称限制了我们编写更大更复杂程序的能力."

为什么?

Dan*_*l G 63

这里的问题是导入名称中带有破折号的文件不起作用,因为破折号是python中的减号.因此,如果您想要导入自己的模块,则其名称中不能包含短划线:

>>> import test-1
  File "<stdin>", line 1
    import test-1
               ^
SyntaxError: invalid syntax
>>> import test_1
>>>
Run Code Online (Sandbox Code Playgroud)

较大的程序往往在逻辑上分成许多不同的模块,因此引用

带连字符的名称限制了我们编写更大更复杂程序的能力.


ire*_*ses 13

从该文件(第368页,第30.2节"模块定义"):

请注意,模块名称必须是有效的Python名称...模块的名称仅限于字母,数字和"_".

  • ...距离文字大约三百页,说不要使用连字符. (21认同)