有没有办法在python中的“ for循环”中使用变量?

时间:2018-10-17 23:25:27

标签: python loops for-loop variables input

我需要为学校编写一个程序,以打印文本文件中的行数以及用户输入的内容在文件中的次数。 所以我的想法是做两个循环,一个循环计算文件中的行数, 并计算用户输入的字母在文件中的次数。 像这样:

def file_len(fname):
    amountOfLines = 0
    line = ''
    with open(fname, 'r') as f:
        for line in f:
            amountOfLines += 1
    return amountOfLines

letter= input('Put in a letter: ')
amountOfTimes= 0

for letter in open('scripting week 5.txt', 'r'):
    amountOfTimes += 1
print('The amount of lines in the file is', file_len('scripting week 5.txt'))
print('The letter you put in appears', amountOfTimes, 'times.')

但是那是行不通的,因为for循环没有将我的变量当作变量,它们只是遍历文件。有什么办法可以使这项工作奏效,还是我必须从头开始采用其他方法?

我希望你们能帮助我, 任何帮助将不胜感激! ps。请注意,我是一个完整的python noob,请原谅我的愚蠢问题。

1 个答案:

答案 0 :(得分:1)

您的file_len函数很好。您只需要修改用于计算字母出现次数的for循环即可:

for line in open('scripting week 5.txt', 'r'):
    for char in line:
        if char==letter:
            amountOfTimes+= 1