Skip to main content
 首页 » 编程设计

python:对元组的算术运算导致TypeError

2025年05月04日26JeffreyZhao

所以我有两个不同的二维数组 words 和 scores

words 是一个二维字符串数组 scores是一个二维的float数组

我将它们转换为元组并对它们执行算术运算(我最初将元组传递给执行此操作的库,但为简单起见,我复制了该操作并开始对其进行测试)

我的代码

for i in range(0,len(scores)): 
    freqs = [] 
    for word, score in zip(words[i], scores[i]): 
        freqs.append((word, score)) 
        frequencies = [ (word, freq / 20.0) for word, freq in freqs ] 

当我运行这段代码时,出现以下错误

TypeError                                 Traceback (most recent call last) 
<ipython-input-17-017692219adb> in <module>() 
      4     for word, score in zip(words[i], scores[i]): 
      5         freqs.append((word, score)) 
----> 6         frequencies = [ (word, freq / 20.0) for word, freq in freqs ] 
      7  
      8         #elements = wc.fit_words(freqs) 
 
TypeError: unsupported operand type(s) for /: 'str' and 'float' 

请您参考如下方法:

freq 是一个字符串。在除法之前转换为 float 。

例如:float(freq)

所以新代码将是frequencies = [ (word, float(freq)/20.0) for word, freq in freqs ]