返回文件中的字符数(通用)

我正在编写 Python 课程简介中的每周作业。我们有一个文件(planets.txt),我们必须编写一个函数来返回文件中的字符数。我已经写了一个函数来做到这一点,并且值是准确的。但是我的教学团队说代码不是“通用的”(?)并且不能与其他文件一起使用。我完全不明白这一点。


我的代码是:


def num_chars_in_file(file):

    path = 'planets.txt'

    file_handle = open(path)

    planetstxt = file_handle.read()

    count = 0


    for text in planetstxt:

        count += len(text)


    file_handle.close()


    return count


print(f"\nProblem 1: {num_chars_in_file('path')}")

谁能向我解释它有什么问题?通用代码是什么意思?


料青山看我应如是
浏览 94回答 2
2回答

交互式爱情

要让您的代码在其他文件上工作(=普遍),您需要它是动态的。与其硬编码文件名,不如将其作为参数传递:def num_chars_in_file(file):    file_handle = open(file)    ...num_chars_in_file('some-file.txt')

森林海

def num_chars(file):    with open(file) as f:        return sum([len(char.rstrip()) for char in f])num_chars('test.txt')
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python