如何打印文件中一行的长度(无换行符)
How to print length of a line in a file (sans newlines)
我有一个作业,我需要在从文件中删除换行符后输出一行的第一个字符加上该行的长度。
这是我的代码:
with open("/usercode/files/books.txt", "r") as f:
for line in f.readlines():
print(line[0] + str(len(line)).strip('\n'))
文件内容如下:
Some book
Harry Potter
To Kill a Mockingbird
输出应该是:
S9
H12
T21
但我得到的输出是:
S10
H13
T22
为什么程序错误地打印了一个字符的长度太长?
您调用 len 然后将值转换为字符串,然后将其剥离,这不是您想要的。尝试:
with open("/usercode/files/books.txt", "r") as f:
for line in f.readlines():
print(line[0] + str(len(line.strip('\n'))))
我有一个作业,我需要在从文件中删除换行符后输出一行的第一个字符加上该行的长度。
这是我的代码:
with open("/usercode/files/books.txt", "r") as f:
for line in f.readlines():
print(line[0] + str(len(line)).strip('\n'))
文件内容如下:
Some book
Harry Potter
To Kill a Mockingbird
输出应该是:
S9
H12
T21
但我得到的输出是:
S10
H13
T22
为什么程序错误地打印了一个字符的长度太长?
您调用 len 然后将值转换为字符串,然后将其剥离,这不是您想要的。尝试:
with open("/usercode/files/books.txt", "r") as f:
for line in f.readlines():
print(line[0] + str(len(line.strip('\n'))))