我想知道是否有比下面的方法更能从列表中生成字符串的 Pythonic 方法。
免责声明:我是一名生物物理学家,对 python 没有深入的了解,并且确实搜索并测试了以下组合:resid {}或.format(a) / ([a]) / (*a) / (x for x in a)广泛地,但可能我不知道要寻找什么......我知道下面的代码有效,但我不知道清楚地了解为什么列出的任何一个都没有。
输入:
a=[23,33,105,400]
Run Code Online (Sandbox Code Playgroud)
代码:
c=""
for x in a[0:-1]:
c = c + "resid {} or ".format(x)
c=c+"resid {}".format(a[-1])
print(c)
Run Code Online (Sandbox Code Playgroud)
输出:
resid 23 or resid 33 or resid 105 or resid 400
Run Code Online (Sandbox Code Playgroud)
使用字符串连接
" or ".join("resid {}".format(x) for x in [23,33,105,400])
# 'resid 23 or resid 33 or resid 105 or resid 400'
Run Code Online (Sandbox Code Playgroud)
您还可以使用 f 字符串
" or ".join(f'resid {x}' for x in [23,33,105,400])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
66 次 |
| 最近记录: |