首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python基础知识(四)

#####################文件操作#################

'''

文件操作的步骤:

1.打开文件open

2.操作文件read、write

3.关闭文件close

注意:

文件存储的是二进制,读取文件应该读取的是字节,

但是Python3会自动将字节转换为字符给我们进行操作,读和写都以字符串进行操作;

如果需要以字节的形式打开和操作用rb/wb/xb/ab后面加b,这样的话读写都以字节形式操作。

'''

#1.打开文件方法一:普通方式(以字符串方式打开)

# r,只读模式【默认】

f =open('test.log','r',encoding='utf-8')

data = f.read()

f.close()

print(data,type(data))

# w,只写模式【不可读;不存在则创建;存在则清空内容;】

f =open('test.log','w',encoding='utf-8')

f.write('下雨天')

f.close()

# x, 只写模式【不可读;不存在则创建,存在则报错】

# a, 追加模式【不可读;不存在则创建;存在则只追加内容;】

f =open('test.log','a',encoding='utf-8')

f.write('rainyday')

f.close()

#2.打开方式二-以字节形式打开

#即在后面加b,文件操作都会以字节的形式进行,rb/wb/xb/ab

#3.打开方式三-同时读写文件

# r+:打开时指针在最前面,写的时候在末尾追加,指针到最后

f =open('test1.log','r+',encoding='utf-8')

print(f.tell())#打印指针

data = f.read()

print(data)

f.write('000')

print(f.tell())

f.close()

# w+:打开时先清空文件,则指针为

withopen('test1.log','w+',encoding='utf-8')asf :

data = f.read()

print(data)

print(f.tell())

f.write('new')

# x+:文件重复会报错,和w+类似

# with open('test1.log', 'x+', encoding='utf-8') as f :

# data = f.read()

# print(data)

# print(f.tell())

# f.write('new')

# a+:打开后,指针自动跳到最后,写的时候在尾部追加。

withopen('test1.log','a+',encoding='utf-8')asf :

data = f.read()

print(data)

print(f.tell())

f.write('222222new')

f.seek()

print(f.tell())

f.write('66')

#4.常用的几个函数

# tell():读取当前指针位置

# seek():设置当前指针位置

# read():读取文件

# close():关闭文件

# flush():将文件从内存刷新到磁盘(读写时文件是存放在内存的)

# truncate():配合指针使用,指针在哪,就截取指针前面的内容

# readline():一行一行的读取文件

#5.复制文件

withopen('test1.log','r',encoding='utf-8')asf1,open('test2.log','a+',encoding='utf-8')asf2:

forlineinf1:

f2.write(line)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180611G1ZV2400?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券