猿问

在多行 f 字符串中我可以期待什么行结尾

我正在 Windows 上工作并使用 Python 3.9。在我的脚本中,我将一个字符串构造为具有多行的 f 字符串:


XY="multiline"

MY_F_STRING = f'''my

{XY}

f-string

ends

here.'''

即使我的编辑器告诉 mit 文件中的行结尾是 dos 样式 (\r\n)并且查看光盘上的字节,我看到了 CRLF 相应的十六进制代码,但 MY_F_STRING 的 repr 告诉我行结尾是 unix 样式(\n)。


我的问题是:这是预期的行为吗?这方面的一般规则是什么?


吃鸡游戏
浏览 108回答 1
1回答

素胚勾勒不出你

Python 以“通用换行符”文本模式读取其源文件,将所有常见的换行符格式转换为简单的\n. 如果您希望在 f 字符串中包含特定的换行符,请使用转义码,例如s = f'my\nf-string\r\nhas\rdifferent newlines'。另请参阅PEP 278。通用换行符允许在不同操作系统上编写的 Python 脚本在其他操作系统上无缝且一致地工作。您希望字符串常量在 Linux 和 Windows 上运行时更改内容吗?
随时随地看视频慕课网APP

相关分类

Python
我要回答