用于将值存储在外部文件中的Python程序

时间:2014-07-29 08:26:07

标签: python

我如何创建一个python程序来存储一系列值(例如,apples = 3,bananas = 5,carrots = 12.5)在一个外部文件中,我稍后可以使用这些值进行计算?< / p>

目前,我可以使用fileinput和fileoutput打印和读取文本文件,但我稍后无法在计算中使用这些值。

with open("values.txt","w") as fileinput:
    fileinput.write(value)

我正在寻找的一个例子是首先能够输入变量名称(例如苹果),然后键入数字或其他值(例如3.3),然后将这些值打印到values.txt。这样,一个单独的程序可以查看values.txt,以便能够在计算中使用apples = 3.3的值(例如,apples * 3 = 9.9)

2 个答案:

答案 0 :(得分:0)

你是什么意思“但我以后无法在计算中使用这些值。”但是您可以创建一个将String映射到值的字典,例如:

mydata = {}
with open("values.txt", "r") as output:
   for line in output:
       tmp = line.split('=')
       mydata[tmp[0]] = float(tmp[1])

答案 1 :(得分:0)

假设您要将fruitvalues对存储到字典中(但您可以将其调整为任何数据结构):

写入档案:

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)