python学习文件操作练习

来源:互联网 发布:java逻辑 编辑:程序博客网 时间:2024/05/21 07:10

1.找出文件中的不是以“#”号开头的文件并输出:

例:test.txt文件的内容如下:

root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologin   #sync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdown #halt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologin#dbus:x:81:81:System message bus:/:/sbin/nologinpolkitd:x:997:995:User for polkitd:/:/sbin/nologin    #tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologinunbound:x:996:993:Unbound DNS resolver:/etc/unbound:/sbin/nologin#colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologinusbmuxd:x:113:113:usbmuxd user:/:/sbin/nologingeoclue:x:994:991:User for geoclue:/var/lib/geoclue:/sbin/nologin

脚本编写:

f = open("test.txt","r")  #以"r"模式打开文件for i in f:    if not i.strip().startswith("#"):         print i,    # 打印不是以"#"号开头的行f.close()  #关闭文件

脚本运行效果:

bin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownmail:x:8:12:mail:/var/spool/mail:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologinpolkitd:x:997:995:User for polkitd:/:/sbin/nologinunbound:x:996:993:Unbound DNS resolver:/etc/unbound:/sbin/nologinusbmuxd:x:113:113:usbmuxd user:/:/sbin/nologingeoclue:x:994:991:User for geoclue:/var/lib/geoclue:/sbin/nologin

2.编写逐页显示文本文件的程序,用户输入一个文件名,每次默认显示行数为10行,给用户一个选项,”是否继续?(Y|N)”

脚本编写:

file = raw_input("请输入文件名:")f = open(file,"r")while True:    a = 0    for i in range(10):        b = f.readline()        if b:            a += 1            print b,    if a < 10:        print "\n file over!"        break    choice = raw_input("是否继续阅读?[Y(yes),N(no)]:").upper()    if choice == "N":        breakf.close()

脚本执行效果:

请输入文件名:test.txtroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdown#halt:x:7:0:halt:/sbin:/sbin/halthellowestoshaha是否继续阅读?[Y(yes)|N(no)]:y  #按y继续阅读testokwestos  file over!     #文件结束提示

再次执行:

请输入文件名:test.txtroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdown#halt:x:7:0:halt:/sbin:/sbin/halthellowestoshaha是否继续阅读?[Y(yes)|N(no)]:n    #按n直接退出
原创粉丝点击