因此,我正在用Python编写一个脚本,打开一个包含电子邮件头的文件,我正在对其进行解析,以find()一组特殊的浮点数,我想用它来执行一些数学函数。在
以下是我的代码,只是为了好玩:fname = raw_input("What is the file name? ")
fhand = open(fname)
total = 0
count = 0
for line in fhand:
line = line.rstrip()
linePos = line.rfind('X-DSPAM-Confidence: ')
if linePos >= 0:
rnum = line[linePos + 1: (linePos + 1)+7]
print rnum
#total += float(rnum)
#count += 1
elif linePos == -1:
continue
#avg = total/count
#print "Average spam confidence: " + avg
我尝试使用rfind()来获取str中的最高索引,以便从正在读取的行中分割[]我想要的浮点数。在
我的输出测试打印我跑去看看我的rfind()把我放在哪里是这样的:
^{pr2}$
我对任何解决它的帮助都不感兴趣,因为我已经可以用find()方法来做了,只需根据需要调整索引,以获得需要使用的float()数据。在
我的问题更多的是关于rfind()本身,以及我是否正确地使用它和/或在文档中遗漏了关于它的使用的一些内容。当我阅读Python2.7文档时,它声明它的用法与find()完全相同,只是它返回str的最高索引。在我的例子中,它的作用与find()相似,并返回最低的索引。在
下一步我唯一想到的是它现在是否被弃用了,因为Python2.7文档提到该页面上的一些方法正在被弃用。在
我不知道。有人有意见吗?还是我只是个无赖,把rfind()完全弄错了???在