Erx*_*xin 10 python string format
我需要将多个路径添加到最后带有 \n 字符的单行字符串中。为了方便起见,在字符串的前面添加了关键字r。此时字符“\n”无法正常显示。
前任。
str_output = r'name = %(name)s, some_dir = \\folder0\\..., description = "%(des)s\n'
print(str_output % {'name':'new', 'des':'new add one'})
Run Code Online (Sandbox Code Playgroud)
输出将显示无换行符。目前我使用 string plus 来绕过这个问题。例如:
str_output = r'name = %(name)s, some_dir = \\folder0\\..., description = "%(des)s' + '\n'
Run Code Online (Sandbox Code Playgroud)
而不是之前定义的 str_output。我很好奇是否还有其他方便的方法可以做到这一点?在我的代码中,字符串 plus 看起来很难看。谢谢你!
com*_*hys 13
我来晚了一点,但这是我自己最近的要求。\n我想要一个带有 LaTeX 解析的多行轴标签,用于matplotlib.
我的解决方案是使用括号开始续行,然后组合普通字符串和原始字符串来实现换行:
\nxlabel=(\'Time of Flight (ToF)\\n\'\n r\'[$\\times10^3$ arb. units]\')\nRun Code Online (Sandbox Code Playgroud)\n这是\xe2\x80\x99 的样子:
\n
这可以扩展到更复杂的字符串。
\n字符串文字前缀r表示原始字符串,即转义符是常规字符。如果您确实想使用原始字符串,您可以尝试以下操作:
name = 'new'
des = 'new add one'
newline = '\n'
str_output = rf'name = {name}s, some_dir = \\folder0\\..., description = "{des}s{newline}s'
print(str_output)
Run Code Online (Sandbox Code Playgroud)
尽管这意味着您必须承受newline每一次的痛苦dict。
另一种更有意义的方法是:
str_output = r'name = %(name)s, some_dir = \\folder0\\..., description = "%(des)s%(\n)s'
print(str_output % {'name':'new', 'des':'new add one', '\\n': '\n'})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7458 次 |
| 最近记录: |