2015-04-12 102 views
1

對於此代碼:將字符串轉換成數值

>>>string = <insert some string here> 
>>>for i in list(string): 
    j += 1 
    eval('v'+str(j)) = i 

此預期輸出:

>>>v1 
'a'  #first string's character 
>>>v2 
'b'  #second string's character 

我希望至少有一些人可能明白這一點,並幫助我。

+0

爲什麼不直接將字符串轉換爲列表? –

+0

我不確定你想要什麼。似乎沒有第二個字符串? – thefragileomen

+0

我想將字符串轉換爲值,而不是列表值。 – XaMi

回答

0

這是不好的做法在全球範圍內爲你做創建變量,試試這個地方string是你的字符串:

char_variables = {'v{}'.format(a): b for a, b in enumerate(string, 1)} 

如果你真的必須這樣做,你可以更新包含全球價值觀字典如下所示:

globals().update({'v{}'.format(a): b for a, b in enumerate(string, 1)}) 
+0

感謝它的工作,我ily不能很佩服你,你如何在2分鐘內想出它...... D: – XaMi