有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我看到我的错误。谢谢。无论如何要解决它? –