我正在尝试使用遵循特定格式的单词在字符串中创建一些变量。
例如,我的原始字符串是:
string = '@Cost1 + (@Cost2 + @Cost3) / @Revenue1 * 1.2'
我已经创建了一个字典如下:
mydict = {'Cost1' : 10, 'Cost2' : 5, 'Cost3' : 1, 'Revenue1' : 10}
我想创建的是一个函数,它将替换@Cost1(例如): mydict.get('Cost1')
这样我就可以将字符串中的@ 视为变量的标记并在我的字典中查找值。
因此,我的意图是:
用mydict.get('
string.replace() 函数替换 @ by --> 这很容易
')
在@words 后面的字母链的末尾添加--> 这个我很难实现
我正在考虑使用 for 循环,但在每个以 @ 开头的单词结尾后添加“')”的逻辑上很挣扎。也考虑过发电机但不太确定
另外,我想添加一个检查,每个@Cost1、@Cost2 等都在我的字典中,但我应该能够做到这一点。
欢迎对此提供任何帮助
谢谢 !
埃里克
编辑:
根据您的评论,我希望我的最终输出是:
string = mydict.get('Cost1') + ( mydict.get('Cost2') + mydict.get('Cost3') ) / mydict.get('Revenue1') * 1.2'
繁星coding
长风秋雁
相关分类