我想要一些存储在文件(文本文件或yaml文件)中的变量
例如,如果我将这些变量存储在文件
中employee = ['Tom', 'Bob','Anny']
salary = 200
managers = ['Saly','Alice']
我希望用户输入列表名称或变量名称,例如
如果用户输入了员工并希望对列表值执行某些操作,那么用户应该访问employee[0]
,employee[1]
....等
如何编写一个python脚本,该脚本将转到文件中搜索正确的变量并让用户访问其值
由于
答案 0 :(得分:3)
就像@Levon所说的那样,有几种方法可以让你这样做,最好的方法取决于你的问题背景。例如,你可以
答案 1 :(得分:0)
假设您的文件内容有些一致,这种方法可能是一种方法:
更新:我添加了解析之前未提供的列表所需的代码。
代码获取文件中的所有数据,并将其作为适当的类型(即浮点数和列表)分配给变量。列表解析不是特别漂亮,但它是有用的。
import re
with open('data.txt') as inf:
salary = 0
for line in inf:
line = line.split('=')
line[0] = line[0].strip()
if line[0] == 'employee':
employee = re.sub(r'[]\[\' ]','', line[1].strip()).split(',')
elif line[0] == 'salary':
salary = float(line[1])
elif line[0] == 'managers':
managers = re.sub(r'[]\[\' ]','', line[1].strip()).split(',')
print employee
print salary
print managers
的产率:
['Tom', 'Bob', 'Anny']
200.0
['Saly', 'Alice']