我有一組字符串,我將其提取並存儲到數組中。其中一些包含我想要提取的變量,問題是這些是目前的字符串。因此,例如,一個字符串看起來像從Python中的字符串集合中提取變量
s1 = 'DataFile=scan1.dat'
其他看起來像
s2 = 'NumberOfChannels=32'
我想要做的就是把S1和S2,並從他們的信息提取,並將其作爲例如:
DataFile='scan1.dat'
NumberOfChannels=32
這些字符串看起來都與上面的類似。它可以是包含字符串本身的變量,也可以是包含整數的變量。這是我的(失敗)的整數的情況下嘗試:
# ll is a string element of the big array
if ll.startswith('NumberOfChannels'):
print "found nChans"
idx = ll.index('=')
vars()[ll[:idx-1]] = int(ll[idx+1:])
任何建議/外部模塊,這可以幫助我將不勝感激
這是一個常見的問題,但這種做法在Python令人難以接受的,因爲它不僅是危險的(你可以很容易陰影內置)也是一個可怕的命名空間污染。將鍵/值存儲在字典中,一個單獨的名稱空間(或將虛擬對象用作名稱空間)。 –