Python程序将值存储在外部文件中
我想知道怎么写一个Python程序,把一些数值(比如:苹果=3,香蕉=5,胡萝卜=12.5)存到一个外部文件里,以便以后可以用这些数值进行计算。
现在,我可以使用fileinput和fileoutput来打印和读取文本文件,但我还不能把这些数值用在后面的计算中。
with open("values.txt","w") as fileinput:
fileinput.write(value)
我想要的一个例子是,首先能够输入一个变量名(比如:苹果),然后输入一个数字或其他值(比如:3.3),最后把这些值打印到一个叫values.txt的文件里。这样,另一个程序就可以查看values.txt,从而在计算中使用苹果=3.3的值(比如:苹果*3=9.9)。
2 个回答
0
你说的“但我无法在后面的计算中使用这些值”是什么意思呢?其实,你可以创建一个字典,把字符串和对应的值联系起来,比如:
mydata = {}
with open("values.txt", "r") as output:
for line in output:
tmp = line.split('=')
mydata[tmp[0]] = float(tmp[1])
0
假设你想把fruit
(水果)和values
(值)配对存储到一个字典里(不过你也可以把这个方法用在其他数据结构上):
写入文件:
fruits = {"apple":12, "banana":4}
with open("test.txt", 'w') as out:
for fruit,number in fruits.iteritems():
line = fruit + '=' + str(number) + '\n'
out.write(line)
从文件解析到字典:
emptyDict = {}
with open("test.txt", 'r') as infile:
for line in infile:
tokens = line.strip().split('=')
fruit = tokens[0]
number = tokens[1]
emptyDict[fruit] = float(number)