我刚开始使用Python,并希望阅读以下文本文件并使用变量值:
文本文件'r1':(变量名及其值)
mu | cs | co
------------------
5 | 100| 300
------------------
我有以下代码:
以open(“r1.txt”)作为file1: data = file1.read()
可以打印,但f不返回任何值。
我如何在文本文件中使用该变量供以后使用(mu,cs,co)?
Ex:我想生成一个泊松分布,
我可以写:
G = poisson(data.mu)
似乎没有,但我怎么能在数据集中调用相应的变量?
谢谢!
答案 0 :(得分:0)
使用read
函数(在print
命令中)后,文件已被读取,因此二读不提供任何内容。您应该将读数分配给某个变量,例如
with open("r1.txt") as file:
lines = file.read()
以便您以后可以返回lines
。
但是如果要将特定变量分配给从文件读取的特定值,则需要对其进行解析。在这里,它在很大程度上取决于您的数据所处的特定格式。
答案 1 :(得分:0)
你应首先阅读两行,然后解析它们,最后将它用作dict
with open("r1.txt") as fp:
lines = [line for line in fp]
keys = [s.strip() for s in lines[0].split('|')] # key line
vals = [s.strip() for s in lines[2].split('|')] # value line
f = dict(zip(keys, vals))
print(f)
然后,您可以使用f['mu']
获取mu值。