Python学习:读文件

#Python中读入文件,主要有read(),readline(),和readlines()。其中,read()和readlines()都是一次将整个文件读入内存,然后根据循环的不同,处理方式不同!下面将展示不同情况下的用法!
# -*- coding: cp936 -*-
def readfile1(filename):
    fr= open(filename)
    text = fr.read() #一次性读取所有的行,读出来text是字符串
    fr.close()
    print text 

def readfile2(filename):
    fr= open(filename)
    for unused_i in range(3):
        text = fr.readline() #读取单行,读出来text是字符串
        print text #能够打印出text
    print text #不能够打印出全文本text
    fr.close()

def readfile3(filename):
    fr= open(filename)
    text = fr.readlines()#一次性读取所有的行,读出来text是列表
    fr.close()
    print text

def readfile4(filename):
    fr= open(filename)
    char = fr.read(1)#一次性读一个字符,读出来text是字符
    while char:
        print char
        char = fr.read(1)
    fr.close()

def readfile5(filename):
    fr= open(filename)
    while True:
        line = fr.readline() #读取单行,读出来text是字符串
        if not line:break
        print line
    fr.close()

def readfile6(filename):
    fr= open(filename)
    for char in fr.read():#一次性读取所有的行,读出来是字符串
        print char #但是char每次只处理一个字符
    fr.close()

    
def readfile7(filename):#注意这种循环只能处理第一行数据,print时是答应一个个字符
    fr= open(filename)
    for line in fr.readline():
        print line 
    fr.close()
    
def readfile8(filename):
    fr= open(filename)
    for line in fr.readlines():#一次性读取所有的行,读出来是列表
        print line #但是line每次只处理一行字符
    fr.close()
    
def readfile9(filename):
    fr= open(filename)
    for line in fr:
        print line 
    fr.close()
    
def main():
    filename = 'test.txt'
    print '----readfile1----'
    readfile1(filename)
    print '----readfile2----'
    readfile2(filename)
    print '----readfile3----'
    readfile3(filename)
    print '----readfile4----'
    readfile4(filename)
    print '----readfile5----'
    readfile5(filename)
    print '----readfile6----'
    readfile6(filename)
    print '----readfile7----'
    readfile7(filename)
    print '----readfile8----'
    readfile8(filename)
    print '----readfile9----'
    readfile9(filename)

if __name__ == '__main__':
    main()

输出结果为:

>>> 
----readfile1----
Welcome to Python!
I love!
----readfile2----
Welcome to Python!

I love!


----readfile3----
['Welcome to Python!\n', 'I love!']
----readfile4----
W
e
l
c
o
m
e
 
t
o
 
P
y
t
h
o
n
!


I
 
l
o
v
e
!
----readfile5----
Welcome to Python!

I love!
----readfile6----
W
e
l
c
o
m
e
 
t
o
 
P
y
t
h
o
n
!


I
 
l
o
v
e
!
----readfile7----
W
e
l
c
o
m
e
 
t
o
 
P
y
t
h
o
n
!


----readfile8----
Welcome to Python!

I love!
----readfile9----
Welcome to Python!

I love!
>>> 


test.txt 文件:

Welcome to Python!

I love!



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值