Bootstrap

python报错:SyntaxError: f-string expression part cannot include a backslash

前提:

python版本3.12以下(本人此时使用的python版本为3.9.6)

使用 f '{}' 进行格式化 ,内容包含反斜杠 \\ 的字符串时

示例:

我需要通过格式化的方法把字符串“\”进行传参,使得变量bb打印出变量aa的效果

该场景最有可能遇到的情况:路径拼接或涉及\n等特殊字符

结果显示报错,意思是:使用 f '{}'格式化不允许里面包含反斜杠

解决方法:

方法一:使用 "".format方法进行格式化

下图中cc变量成功打印出和aa变量一样的值(ps:反斜杠之所以要输入2个是因为反斜杠本身有特殊含义,需要使用一个反斜杠把原来的反斜杠给转义才能表示字符串)

 

方法二:把python切换到3.12及以上

python版本于3.12可以使用 f '{}' 的格式化方法兼容字符串反斜杠了

(反斜杠处有红色波浪线是因为我的pycharm版本(2021.2)比较老了,直接运行是能够成功的)

;