【发布时间】:2020-10-09 17:22:47
【问题描述】:
fname=open('C:\Program Files (x86)\Python38-32\mbox-short.txt','r')
count=0
val=0.000
for num in fname:
if num.startswith('X-DSPAM-Confidence:'):
count=count+1
for i in num:
val[i]=num[19:25] #error
print(i,val)
如果我不指定 val=0.000,则会出现此错误:name 'val' is not defined。
那是因为可能是本地声明而不是全局声明(这是我的看法),所以我最终将值分配给 'val'。
【问题讨论】:
-
如果
val是浮点数或未定义,则无法索引它。目前,这段代码似乎根本没有多大意义。在您的循环中,i只是一个字符串,因此除非您将 val 转换为dict,否则将其用作 val 的索引将不起作用。 -
如果您在问题中解释您希望代码做什么,那么提供好的建议会更容易。有点不清楚。