【发布时间】:2015-05-23 03:00:10
【问题描述】:
是否有正确的方法在多行上显示长度超过 79 个字符(基于 pep8)的文件路径(硬编码),或者最好将文件路径保留在单行上?
例如
photos = "D:\MyWork\FieldWork\Year2015\January\MountainPass\Area1\Site1\Campsite2\Inspections\photos1"
上面的例子在多行还是单行上效果最好?
【问题讨论】:
是否有正确的方法在多行上显示长度超过 79 个字符(基于 pep8)的文件路径(硬编码),或者最好将文件路径保留在单行上?
例如
photos = "D:\MyWork\FieldWork\Year2015\January\MountainPass\Area1\Site1\Campsite2\Inspections\photos1"
上面的例子在多行还是单行上效果最好?
【问题讨论】:
我个人使用这种方法,并且在PEP8材料中看到过它:
long_string = ('this is a really long string I want '
'to wrap over multiple lines')
你也可以这样做:
long_string = 'this is a really long string I want '\
'to wrap over multiple lines'
根据 PEP8,您应该尽量将代码的最大宽度保持在 79 个字符,通常 docstrings 和 cmets 保持在 72 个字符。
我还建议您查看os.path。
【讨论】:
最好不要有硬编码的文件路径。考虑使用相对路径或其他更稳健的方法。除非您只是制作一个快速脚本以单独在您的计算机上运行,在这种情况下,PEP8 想要您做什么并不重要。
要真正回答这个问题,你可以这样做:
photos = "D:\MyWork\FieldWork\Year2015\January\MountainPass\\"+\
"Area1\Site1\Campsite2\Inspections\photos1"
或者
photos = ("D:\MyWork\FieldWork\Year2015\January\MountainPass\\",
"Area1\Site1\Campsite2\Inspections\photos1")
【讨论】:
+;它要么什么都不做,要么稍微放慢速度。添加逗号不仅没有必要,而且实际上会破坏代码;它给你一个由两个字符串组成的元组,而不是一个字符串。