python核心编程第九章习题答案(1)

9–1.   文件过滤. 显示一个文件的所有行, 忽略以井号( # )开头的行. 这个字符被用做 

Python , Perl, Tcl, 等大多脚本文件的注释符号.

#filename:test9-1.py

f=open('F:\\test.txt','r')
for eachline in f:
    try:
        if eachline.lstrip()[0]!='#': 
            print eachline,
    except:
        pass
f.close()
附加题: 处理不是第一个字符开头的注释

#filename:test9-1.py
#__doc__
f=open('F:\\test.txt','r')
for eachline in f:
    if '#' in eachline:
        r=eachline.find('#')
        if r>0 :
            #print eachline[r-1:r+2]
            if eachline[r-1:r+2]!= r"'#'"  and eachline[r-1:r+2]!=r'"#"':               
                print eachline[:r],
            else:
                print eachline, 
    else:
        print eachline,    
f.close()

9–4.   文件访问. 写一个逐页显示文本文件的 程序. 提示输入一个文件名, 每次显示文本
文件的 25 行, 暂停并向用户提示"按任意键继续.", 按键后继续执行.

注意:文件结束处理

def rbypage():
    fname=raw_input("Enter filename:").strip()
    fp = open(fname,'r')
    while True:
        lines=0
        for p in range(25):
            cline=fp.readline()
            if cline!='':
                lines+=1
                print cline,
        if lines<25:
            print '\nfile is over'
            break
        info=raw_input("continue?(Y/N)").upper()
        if info=='N':
            break
    fp.close()

rbypage()



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值