在python中使用split()或find()函数

2024-06-01 09:41:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个程序,打开一个文件并查找如下所示的行:

X-DSPAM-Confidence:    0.8475. 

我想使用split and find函数来提取这些行并将其放入一个变量中。这是我写的代码:

^{pr2}$

请,我现在开始用python,所以请给我一些简单的东西,我可以理解,以帮助我以后。拜托,拜托。在


Tags: and文件函数代码程序findsplitconfidence
3条回答

我认为唯一错误的部分是notin if:

fname = raw_input("Enter file name: ")
if len(fname) == 0:
    fname = 'mbox-short.txt'
fh = open(fname,'r')
total = 0
lines = []
for line in fh:
    if line.startswith("X-DSPAM-Confidence:"): 
        lines.append(line)

首先用raw_input()接收输入

fname = raw_input("Enter file name: ")

然后检查输入字符串是否为空:

^{pr2}$

然后,打开文件并逐行读取:

lines = []
with open(fname, 'r') as f:
    for line in f.readlines():
        if line.startswith("X-DSPAM-Confidence:"):
            lines.append(line)

with open() as file语句只确保文件对象在不再需要时关闭。(file.close()在退出with子句时自动调用)

我知道这是从哪里来的,因为我以前也做过。我需要计算平均值:)

fname = raw_input("Enter file name: ")
fh = open(fname)
count = 0
sum = 0
for line in fh:
    if not line.startswith("X-DSPAM-Confidence:") : continue
    count = count + 1
    pos = line.find(' ')
    sum = sum + float(line[pos:])
average = sum/count

相关问题 更多 >