Мне нужно написать функцию, которая принимает строку, представляющую имя файла в качестве аргумента, например. letter_count ('alphabet.txt'). Функция должна открыть файл и вернуть количество букв (а не цифр или других символов), которые оно содержит.Функция, которая принимает строку, представляющую имя файла в качестве аргумента. Функция возвращает число букв в txt-файле
Извините за включение доктрины, но я думаю, что это помогает сделать более очевидным то, что пытается достичь.
def letter_count(filename):
"""
>>> letter_count("anthem.txt")
177
>>> letter_count("digits.txt")
0
>>> letter_count("phrase.txt")
10
"""
myfile = filename
count = 0
letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
text = myfile.readlines()
for char in text:
if char in letters:
count += 1
return count
import string
myfile = open(filename, 'r')
myfile.close()
if __name__=="__main__":
import doctest
doctest.testmod(verbose=True)
Очевидно, что я допустил ошибку, но не могу определить, какие-либо советы?
'myfile' Безразлично 't существует в вашей функции – Finwood
Извините, ребята, я обновил его. Было несколько проблем с вставкой. Грег, я назвал функцию letter_count в доктрине. – limereid
ваш 'letter_count' еще не вызывается ... – Finwood