以下代码给出了一个错误:
filename='foo.txt'
sed_str = 'PROJECT_DIR=\$\{PROJECT_DIR:-{}\}'.format(filename)
print (sed_str)
结果:
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-12-9ac4d7cde75e> in <module>()
1 filename='foo.txt'
----> 2 sed_str = 'PROJECT_DIR=\$\{PROJECT_DIR:-{}\}'.format(filename)
3 print (sed_str)
KeyError: 'PROJECT_DIR'
为什么我看到一个键错误?你知道吗
正如在对您的问题的评论中所提到的,您需要避开那些不属于需要格式化的部分的花括号。以下是您遇到的问题的示例解决方案:
如果您有最新版本的Python,您可能需要考虑使用
f''
字符串来创建sed_str
变量:使用
{{
和}}
对格式字符串中的大括号进行转义:提供:
相关问题 更多 >
编程相关推荐