python-MOOC学习笔记:文件操作

1.文件打开

' r':只读模式,默认值,如果文件不存在,返回FileNotFoundError
'w':覆盖写模式,文件不存在则创建,存在则完全覆盖
'×':创建写模式,文件不存在则创建,存在则返回FileExistsError
'a':追加写模式,文件不存在则创建,存在则在文件最后追加内容
'b' :二进制文件模式
't':文本文件模式,默认值
'+':与r/w/x/a一同使用,在原功能基础上增加同时读写功能

<变量名> = open(<文件路径>, <打开模式>)

示例:

f = open( "f.txt" ):文本形式、只读模式、默认值
f = open("f.txt" ,"rt"):文本形式、只读模式、同默认值
f = open( "f.txt",“w"):文本形式、覆盖写模式
f = open( "f.txt" , "a+"):文本形式、追加写模式+读文件
f = open( "f.txt","x"):文本形式、创建写模式
f = open( "f.txt" ,"b"):二进制形式、只读模式
f = open( "f.txt", "wb"):二进制形式、覆盖写模式

#以文本方式打开
tf = open("f.txt","rt",encoding = "UTF-8")
print(tf.readline())
tf.close()

#以二进制形式打开
bf = open("f.txt","rb")
print(bf.readline())
bf.close()

运行结果: 

2.文件关闭

<变量名>.close()

3.文件读取44

'''
f.txt的内容:

中国是个伟大的国家
我爱中国
中国好

'''

'''
<f>.read(size=-1)     读入全部内容,如果给出参数,读入前size长度
<f>.readline(size=-1)  读入一行内容,如果给出参数,读入该行前size长度
<f>.readlines(hint=-1)    读入文件所有行,以每行为元素形成列表,如果给出参数,读入前hint行
'''

#遍历全文本:方法1
fname = input("请输入打开的文件名:")
fo = open(fname,"r",encoding='utf8')
txt = fo.read()
print(type(txt))
fo.close()
print(txt)

#遍历全文本:方法2
fname = input("请输入打开的文件名:")
fo = open(fname,"r",encoding='utf8')
txt = fo.read(2)
print(type(txt))
while txt!="":
    #对txt处理
    print(txt)
    txt = fo.read(2)
fo.close()

#逐行遍历文件:方法1
fname = input("请输入打开的文件名:")
fo = open(fname,"r",encoding='utf8')
for line in fo.readlines():
    print(line)
    print(type(line))
fo.close()

#逐行遍历文件:方法2
fname = input("请输入打开的文件名:")
fo = open(fname,"r",encoding='utf8')
for line in fo:
    print(line)
    print(type(line))
fo.close()

4.文件写入

'''
<f>.write(s)  向文件写入一个字符串s
<f>.writelines(lines)    将一个元素全为字符串的列表无间隙地写入文件
<f>.seek(offset)      改变当前文件操作指针的位置,offset含义如下:0-文件开头;1-当前位置;2-文件结尾
'''

fo = open("output.txt","w+")
ls = ["中国","美国","英国"]
fo.writelines(ls)
print(type(fo))
fo.seek(0)
for line in fo:
    print(line)
fo.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值