python奇数偶数行输出_为什么python打印文件的行只出现奇数行的内容,偶数行的内容没显示?...

from sys import argv

script, input_file = argv

def print_all (f):

print f.read()

def rewind(f):

f.seek(0)

def print_a_line(line_count,f):

print line_count, f.readline()

current_file = open(input_file)

print_all(current_file)

rewind(current_file)

print "let's print 3 lines:\n "

current_line= 1

print_a_line(current_line,current_file),

current_line = current_line+1

print_a_line(current_line,current_file)

current_line = current_line+1

print_a_line(current_line,current_file)

current_line = current_line+1

print_a_line(current_line,current_file)

current_line = current_line+1

print_a_line(current_line,current_file)

下面是cmd显示的内容,其实代码很简单,但就是不知道为什么只是显示了奇数行的内容呢?!

看了看,应该是这样的。

原始的文本应该是

I LOVE YOU !

I need you !

I feel you !

I like you !

i do it for you !

原始文本中应该就是每句话间有一个空行

通过readline读取的每一行是包含行末的换行符的

print输出的时候会在输出之后换行

所以在逐行输出的时候

第一行

1 I LOVE YOU !(这里有个换行)

(输出之后的换行)

第二行

2 (这里有一个换行)

(输出之后的换行)

之后以此类推

如果不想输出空行的话,那在readline之后再用strip处理一下然后再判断一下就行了

注意指针会移动,你再+1,所以就隔行了。把+1去掉就OK

文本是不是I love you 和I need you之间有个空行?

我看上去好像把空行作为偶数行输出了

你代码和输出都没有问题啊。

你本来的文本文件就有空行,空行也是行,所以打印出来会看到一行空一行的样子。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值