有9個文本稱爲text1,text2,... text9。函數定義如下。動態訪問python中的變量
def lexical_diversity(text):
return len(set(text))/len(text)
我想用下面的代碼調用所有9個文本的函數。但輸出是錯誤的。
for i in range(1,10):
a='text'+str(i)
print(lexical_diversity(a))
我的輸出
0.8
0.8
...
0.8
如果應用功能的text1,我得到下面的結果。
>>>lexical_diversity(text1)
Out[37]:0.07406285585022564
那麼哪個部分出問題了?
是什麼text1中包含哪些內容? –
''text'+ str(i)'給出''text1「','」text2「',...實際的字符串。所以你得到''text1「'',''text2」'的詞彙多樣性......如果你想要訪問多個文本,你可能想要將它們存儲在一個數組中,而不是單獨的變量,否則你不能循環在他們。 – spectras
@spectras我看到我的錯誤。謝謝。無論如何要解決它? –