2016-02-22 37 views
0

我有一個文件名爲myfile.conf的Python 3.X - 如何從文件

var1 = 'foo' 
var2 = 'bar' 
var3 = 'other text' 

如何從該文件的變量的內容獲得變量的內容?

在Pythnon

print(var1) 
foo 
print(var2) 
bar 
print(var3) 
other text 

我已經試過

f = open(/myfile.conf', 'r') 
print(f.var1) 
print(f.var2) 
print(f.var3) 

謝謝你幫

+3

您是否嘗試過[閱讀文檔] (https://docs.python.org/3/tutorial/inputoutput.html#reading-and-writing-files)?你相信文件內容嗎?如果是這樣,你可以導入它。 –

+1

閱讀文件,用'=',做一個字典和做事分裂。 – Maroun

+0

導入它,看看'dir',然後對感興趣的東西,只是做'GETATTR(MyModule的,可變的)'。 –

回答

4

你可以在閱讀它作爲一個字典:

d = {} 
with open("myfile.conf", 'r') as f : 
    for line in f: 
     if not line.strip(): 
      continue 
     key,value = line.split('=') 
     d[key.strip()] = value.strip().replace("'","") 

然後,您可以通過訪問字典得到變量:

print(d['var1']) 
'foo' 
+0

謝謝了,如果有一個空行? –

+0

'如果不是line.strip():設置鍵和值 –

+0

不能請修改您的代碼之前continue'?我不知道確切的位置。非常感謝你。 –

0

是否文件需要一個.conf文件?爲什麼不是.py。然後,它也只是從 進口MYFILE *

0

您可以通過執行exec()命令實現這一目標。例如:

f = open("myfile.conf", "rb") 
for i in f: 
    exec(i)