我试过谷歌搜索没有成功,但我试图读取文件并找到每个字符串的长度。每个字符串是一组数字(即012345)。我使用len()函数,它可以工作,但它除了最后一行之外每行增加1个。我假设它正在计算eol / return字符。我该如何解决?感谢
答案 0 :(得分:8)
您可以删除空格:
len(line.strip())
示例:
$ echo 'One
Two' | python -c 'for line in __import__("sys").stdin: print(len(line))'
4
4
$ echo 'One
Two' | python -c 'for line in __import__("sys").stdin: print(len(line.strip()))'
3
3
答案 1 :(得分:2)
您可以修剪您读取的每一行的空白。您可以使用条带(从左侧和右侧剥去额外的空白)或rstrip函数(从右侧剥去空白)。
"My file line.\n".rstrip()
如果你想剥离换行符,那么rstrip()函数也可以接受参数。
"My file line.\n".rstrip('\n')
答案 2 :(得分:0)
您是否尝试过使用Python的字符串替换功能?它会是这样的:
len(yourString.replace('\n', ''));