python中的Openfile函数

python中的Openfile函数,python,Python,我的代码有问题,产生了错误的输出 def main(): count = 1 filename = input('Enter filename: ') for lines in open(filename): lines.strip('') print('Total # of characters: ',len(lines)) count = count + 1 print('Total number of line

我的代码有问题,产生了错误的输出

def main():
    count = 1
    filename = input('Enter filename: ')
    for lines in open(filename):
        lines.strip('')
        print('Total # of characters: ',len(lines))
        count = count + 1
    print('Total number of lines =', count)
main()
问题在于,编写一个程序,读取一个文件words.txt,该文件每行有一个单词,并打印出文件中的字符总数和行总数

因此,我的代码使用count来计算文件中最后要打印的行数。这个计数很好。但是,计算字符是错误的。我的输出

Enter filename: word.txtEnter filename: word.txt
Total # of characters:  3
Total # of characters:  6
Total # of characters:  5
Total # of characters:  6
Total # of characters:  6
Total number of lines = 5
word.txt文件=

hi
hello
hiiiiiiii
herrooo
herr
通过执行
行.strip(“”)
只能在
'

这样做:

lines = lines.strip()
也会去掉末尾的
\n

通过执行
行。剥离(“”)
您仅在
'

这样做:

lines = lines.strip()

也会去掉末尾的
\n

您遇到的问题是
行.strip(“”)
行。通过向它传递一个参数,它将仅在
''
时剥离该行。另一个问题是您没有将此语句分配给任何对象。尝试将其替换为

lines = lines.strip()

您遇到的问题是
行.strip(“”)
行。通过向它传递一个参数,它将仅在
''
时剥离该行。另一个问题是您没有将此语句分配给任何对象。尝试将其替换为

lines = lines.strip()

你的实际问题是什么?考虑到换行符,这个输出在我看来是正确的。问题是字符的长度。例如,hi的长度应为2。我该如何摆脱新行字符?您的实际问题是什么?考虑到换行符,这个输出在我看来是正确的。问题是字符的长度。例如,hi的长度应为2。如何删除新行字符?它应该是
lines=lines.strip()
,而不仅仅是
lines.strip()
,在提交之前我没有看到您的编辑+1对于忍者编辑来说,为了摆脱换行符,
lines.rstrip('\n')
更合适。取决于空格是否为OP的有效“字符”。@karthikr好久没见到你了。你去过哪里?:)@GamesBrainiac我在这里:)它应该是
lines=lines.strip()
,而不仅仅是
lines.strip()
,我在提交之前没有看到您的编辑+1对于忍者编辑来说,为了摆脱换行符,
lines.rstrip('\n')
更合适。取决于空格是否为OP的有效“字符”。@karthikr好久没见到你了。你去过哪里?:)@GamesBrainiac我在这里:)