9–1. 文件过滤. 显示一个文件的所有行, 忽略以井号( # )开头的行. 这个字符被用做
9–4. 文件访问. 写一个逐页显示文本文件的 程序. 提示输入一个文件名, 每次显示文本
文件的 25 行, 暂停并向用户提示"按任意键继续.", 按键后继续执行.
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()