1

我必须编写一个脚本,列出目录中的所有文本文件,然后计算每个文件中的行数,然后给你最大数量、最小数量和平均值。

到目前为止,我有这个:

import glob
import os

def file_len(fname):
    with open(fname) as f:
        for i, l in enumerate(f, start = 1):
            pass
    return i

files = glob.glob("/home/seb/Learning/*.txt")
print files

length = []

for file in files:
    file_len(file)
    length.append(i)

print length

正如你(和我)所期望的那样,它一直有效

length.append(i)

因为我没有被确认身份 - 我认为值得一试。

我的问题是,如何使用函数的返回将其附加到列表中?

4

1 回答 1

1

您需要将返回值分配file_len(file)给一个变量:

flength = file_len(file)
length.append(flength)

该名称i是本地名称,file_len在函数外部不可见,但函数确实返回该值。

于 2014-08-21T11:59:44.570 回答