为啥我的程序输出文本的时候有空行???求大佬解答
本帖最后由 tianyajuanke 于 2021-3-26 16:21 编辑def read_file(get_file,show_line):
g_f = open(get_file)
show_line = int(show_line)
print('文件'+ get_file + '的前' + str(show_line)+'行的内容如下:')
while show_line:
print('%s\n' % g_f.readline())
show_line -= 1
g_f.close()
get_file = input('请输入要打开的文件(C:\\test.txt):')
show_line = input('请输入需要显示该文件前几行:')
read_file(get_file,show_line)
上面是我的代码,文本样式和输出结果
讲道理,我的文本中间并没有空行,而我的程序也没有设置多余的空行,
所以,为什么输出结果会有空行,
求大佬解惑!!!Orz
-----------以下是新添加内容---------
我把print('%s\n' % g_f.readline())改成了 print(g_f.readline())之后,
原先空两行,现在变成空一行了
我也是醉了
为啥啊??? 本帖最后由 qq1151985918 于 2021-3-26 16:15 编辑
print('%s\n' % g_f.readline())
不是你自己加的 "\n" 么 qq1151985918 发表于 2021-3-26 16:13
print('%s\n' % g_f.readline())
不是你自己加的 "\n" 么
但是神奇的是,我把print('%s\n' % g_f.readline())改成 print(g_f.readline())之后
还是会有一个空行
只是之前是空两行
现在变成了空一行...
我也是醉了 tianyajuanke 发表于 2021-3-26 16:19
但是神奇的是,我把print('%s\n' % g_f.readline())改成 print(g_f.readline())之后
还是会有一个空 ...
那是因为读取文本的方法g_f.readline()所读取的内容最后一个就是 换行 "\n"
并且 print 的 end 参数 默认为end = "\n"
所以重复了
你把 print(g_f.readline())
改成 print(g_f.readline()[:-1])
或者print(g_f.readline(),end ='')
就好了 qq1151985918 发表于 2021-3-26 16:27
那是因为读取文本的方法g_f.readline()所读取的内容最后一个就是 换行 "\n"
并且 print 的 end 参 ...
哦,原来是这样啊,谢谢大佬,谢谢大佬~
页:
[1]