我正在创建一个长长的字符串列表,如下所示:
tlds = [
'com',
'net',
'org'
'edu',
'gov',
...
]
Run Code Online (Sandbox Code Playgroud)
我后面漏了一个逗号'org'。Python 自动将其与下一行中的字符串连接成'orgedu'. 这成为一个很难识别的错误。
定义多行字符串的方法已经有很多种,其中一些非常明确。所以我想知道有没有办法禁用这种特定行为?
正确的柏拉图式做法是修改 linter。但我认为生命太短暂,不能这样做,此外,如果下一个编码员不知道你修改过的 linter,他/她的生活将是一个人间地狱。
确保输入(即使是硬编码)有效也不应该感到羞耻。如果对我来说,我会实施一个手动解决方法,如下所示:
tlds = [
'com',
'net',
'org'
'edu',
'gov',
]
redone = ''.join(tlds)
chunk_size = 3
tlds = [ redone[i:i+chunk_size] for i in range(0, len(redone), chunk_size) ]
# Now you have a nice `tlds`
print(tlds)
Run Code Online (Sandbox Code Playgroud)
您可以忘记逗号,将两个元素写在同一行上,甚至可以写在同一个字符串中。chunk_size您也可以邀请粗心的代码协作来搞乱它,如果您的应用程序可以的话,无论如何,稍后文本都会以三份()重做。
编辑:稍后@Jasmijn 的注释,我认为如果我们有动态大小的条目,我们可以使用这样的文字输入,还有一种替代方法:
tlds = ['''com
net
org
edu
gov
nl
co.uk''']
# This way every line is an entry by its own as seen directly without any quotations or decorations except for the first and last inputs.
tlds = '\n'.split(tlds)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
468 次 |
| 最近记录: |