从文本文件python中获取值

时间:2015-02-20 14:15:29

标签: python python-2.7

我想从文本文件中获取输入值,并在python中使用它。

文本文件中的值

等式1的

A=10
B=5

对于等式2:

C=15
D=20

Python程序:

Value1 = A+ 2B
Value2 = D - B + C

任何想法如何去寻找它或在哪里寻找它。 我的想法是在python中读取文件然后在python中为变量赋值,然后在等式中使用它。 谢谢和问候。

2 个答案:

答案 0 :(得分:2)

您可以通过re模块实现此目的。

import re
with open('file') as f:
    fil = f.read()
    A = int(re.search(r'\bA=(\d+)', fil).group(1))
    B = int(re.search(r'\bB=(\d+)', fil).group(1))
    C = int(re.search(r'\bC=(\d+)', fil).group(1))
    D = int(re.search(r'\bD=(\d+)', fil).group(1))
    Value1= A+2*B
    Value2=D-B+C
    print str(Value1), str(Value2)

答案 1 :(得分:0)

pyparsing 模块也可能是您特别感兴趣的,https://pyparsing.wikispaces.com/

这可用于将字符串文字解析成方程式(如* / ^ - +之类),而不使用eval()如果您使用的是linux,则不安全。

这样,您可以使用ConfigParser读取变量的一部分,以及随附的等式,并相应地对它们进行评估。