exec函数的名称错误

2024-06-06 13:43:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我是Python的新手。我试图应用一些定义为字符串的动态函数(startswith()replace(),exec….)。在

我有这个代码:

access_number = 'CF-12345' 
condition = 'str({v}).startswith("CF-", 0)'

result = {}
exec (condition.format(v = access_number)) in r

但我有个错误:

^{pr2}$

我不知道我做错了什么。在

任何帮助都将不胜感激。在


Tags: 函数字符串代码number定义access动态result
1条回答
网友
1楼 · 发布于 2024-06-06 13:43:19

如果运行,请尝试使用打印语句作为诊断

access_number = 'CF-12345'
condition = 'str({v}).startswith("CF-", 0)'

result = {}
print condition
print condition.format(v=access_number)
exec (condition.format(v = access_number)) in result

输出是

^{pr2}$

注意第二行有str(CF-1234)这是在试图从变量CF中减去1234

试试看

access_number = '"CF-12345"'
condition = 'str({v}).startswith("CF-", 0)'

result = {}
exec (condition.format(v = access_number)) in result

相关问题 更多 >