为啥文件名的下划线比连字符更好?
Posted
技术标签:
【中文标题】为啥文件名的下划线比连字符更好?【英文标题】:Why are underscores better than hyphens for file names?为什么文件名的下划线比连字符更好? 【发布时间】:2011-02-13 23:09:00 【问题描述】:来自Building Skills in Python:
像
exercise_1.py
这样的文件名比名称execise-1.py
更好。我们可以从命令行同样运行这两个程序,但是带有连字符的名称限制了我们编写更大更复杂程序的能力。
这是为什么?
【问题讨论】:
顺便说一句,该特定文档的作者是该站点上排名最高的 Python 回答者之一:***.com/users/10661/s-lott 超级用户相关讨论:Using underscore in file names vs dashes?. 这也是一本好书,在 Unix 和 Linux 上:Good style/practices for separators in file (or directory) names 【参考方案1】:这里的问题是导入文件名中带有hyphen-minus(默认键盘键-;U+002D
)的文件不起作用,因为它在Python中代表减号。因此,如果您有自己想要导入的模块,则其名称中不应包含连字符:
>>> import test-1
File "<stdin>", line 1
import test-1
^
SyntaxError: invalid syntax
>>> import test_1
>>>
较大的程序往往在逻辑上被分成许多不同的模块,因此引用
带有连字符的名称限制了我们编写更大、更复杂的程序的能力。
【讨论】:
【参考方案2】:来自该文档(第 368 页,第 30.2 节“模块定义”):
请注意,模块名称必须是有效的 Python 名称...模块名称仅限于字母、数字和“_”。
【讨论】:
... 距离不使用连字符的文字大约三百页。以上是关于为啥文件名的下划线比连字符更好?的主要内容,如果未能解决你的问题,请参考以下文章
FPDF.php 的文件大小比 TCPDF.php 小约 20 倍?为啥?