inFile = open("reversedTestFile.txt")
lines = inFile.readlines()
for line in lines:
print (line)
inFile.seek(0)
for line in inFile:
x=len(line)
print("Length of line: " + str(x))
c = 0
for i in line:
if i !="":
c+=x
print("Number of non-space characters: " + str(c))
输出结果如下: 36 1296 36 1296 ......那么这两个数字,这是错的...... 如何更改它以使输出出来:27,23,31,24 ......?
答案 0 :(得分:0)
我觉得您想要包含仅非空格字符,而不是包括非空格字符' (与其他字符),为此最简单的方法是分割你的字符串并总结块大小:
with open("reversedTestFile.txt", "r") as f:
for line in f:
print(sum(len(x) for x in line.split()))
答案 1 :(得分:0)
到目前为止,每个答案都会计算换行符\n
或\r\n
的额外字符。如果您不想计算它,可以简单地从字符串中删除它,或者减少结果值。
with open('reversedTestFile.txt','r') as f:
results=[len(line.replace('\r','').replace('\n','')) for line in f.readlines()]
print(results)