python对文件的操作

部署运行你感兴趣的模型镜像

1.文件操作步骤

  • 打开文件-open
  • 读写文件
    • 读--把文件的内容读到变量里-read
    • 写--把变量的值写到文件内容里-write 
  • 关闭-close 

2. 读取第一个文件内容

  • 打开文件
    • file=open(要打开文件的路径和文件名,"r")
    • file是一个变量名,代表文件操作对象
    • open的第一个参数一定要文件存在,如果文件不存在,会报错
    • “r”意思是用只读方式打开文件
  • 读取文件内容
    • txt=file.read()
    • txt是定义一个变量,代表存放读取到的文件内容
    • file是上一个open返回的文件操作对象
    • read是file对象的一个方法,用来读取文件内容 
  • 关闭文件
    • file.close()
    • 文件打开后,一定要记得关闭 
#默认模式以读取的模式打开文件  r: 只读 是read缩写
# encoding:指定文件编码格式
file=open("../data1/1.txt","r",encoding="utf-8")
text1=file.readline() #读取一行
text2=file.readlines() #按照行进行读取
text3=file.read() #读取文件  全部读
print(text1)    #读取一行
print(text2)    #因为是按行进行打印,所以文件若是有换行操作,怎会打印出"/n"
print(text3)    #按照文件格式进行打印
#关闭文件
file.close()
操作格式/函数名称功能参数返回值
read()读取文件中所有信息文件中的所有信息
read(num)读取文件中指定数量的字符/字节信息num:每次读取的数据总量文件中指定数量的信息
readline()读取文件中一行信息,以/n判定行是否读取完毕文件中的一行信息
readlines()将文件中信息以行为单位读取到列表中,以/n判定是否读取完毕由文件中所有行信息组成的列表对象

3.写入一个文件内容 

  •  打开文件
    • file=open("要打开的文件路径和文件名","w")
    • 第二个参数w代表用写的方式打开文件
    • 如果用w方法打开文件,文件名不存在,会创建一个新文件,存在的话会覆盖已有文件
  • 写文件
    • file.write(要写入的内容str类型)   
    • file.writelines(模型model类型)
  • 关闭文件
    • file.close() 
# 文件不存在的话,写入模式会自动创建文件
# 中文会乱码,怎么解决: encoding="utf-8"
# w  :覆盖写

file=open("../data1/2.txt","w",encoding="utf-8")
# 如果想换行必须有\n
# 写入多行,以列表方式写入
list1=["11啊啊啊\n","11\n","222\n"]
file.writelines(list1)
# 写入多行,以字符串方式写入
# file.write("123123\naasdad\naasdsad\n")

#关闭文件
file.close()
操作格式/函数名称功能参数返回值
write(str)   将指定信息写入到文件str:要写入的字符串信息写入的数据总量
writelines(model)将指定信息写入到文件model:要写入的存储模型信息,模型中数库是字符串

 4.追加写文件内容

  • 打开文件
    • file=open("文件路径和文件名","a")
    • "a"当文件不存在的时候创建新文件
    • 当文件存在的时候,在文件后面追加内容
  • 写文件
    • file.write(要写入的内容str类型)   
    • file.writelines(模型model类型)
  • 关闭文件
    • file.close() 
# 文件不存在的话,写入模式会自动创建文件
# 中文会乱码,怎么解决: encoding="utf-8"
# a  :追加写 不会覆盖原来的数据

file=open("../data/2.txt","a",encoding="utf-8")

file.write("123123\naasdad\naasdsad\n")

#关闭文件a
file.close()

5.总结打开文件的方式

  • open函数第二个参数的意思是打开文件的方式
    • r只读
    • w只写
    • a追加写
    • rb用二进制方法打开,只读
    • wb用二进制方法打开,只写
    • ab用二进制方法打开,追加

6.打开文件的时候,指定字符集

  • 如果文件格式是utf8的,open打开文件的时候需要指定字符集

    • file=open("文件名",“r”,encoding="utf8") 

  • 如果出现以下错误提示,基本就是由于字符集导致的错误 
UnicodeDecodeError:

7.替换内容 文件名.replace(“旧”,“新”)

# 有文件a.txt
# 内容如下:
# 我爱你python, 我爱你
#
# 写代码,把a.txt内容中的python替换为world
#
# 思路,先把a.txt文件内用r方式读出来
# 用字符串的replace方法把python替换为world
# 在用w方式把替换后的内容写回到a.txt里面
file = open(r"c:\file\temp\a.txt", "r")
txt = file.read()
a = txt.replace("python", "world")
file.close() # 这一步必须关闭
file = open(r"c:\file\temp\a.txt", "w")
file.write(a)
file.close()

8.复制文件

# 把文件a.txt复制为b.txt
# 思路:把a.txt打开,读取全部内容
# 把b.txt用w方法打开,把内容写入
file = open(r"c:\file\temp\a.txt", "r")
txt = file.read()
file.close()
file = open(r"c:\file\temp\b.txt", "w")
file.write(txt)
file.close()

 9.合并文件

# 有文件a.txt
# 内容如下:
#
# 我爱你python, 我爱你
#
# 有文件b.txt
# 内容如下:
#
# hello
#
# 把文件a.txt和b.txt合并为c.txt
# 思路:把文件a.txt内如读出来放到变量a
# 把文件b.txt内如读出来放到变量b
# 把a + b 结果写入的c.txt中
file = open(r"c:\file\temp\a.txt", "r")
a = file.read()
file.close()
file = open(r"c:\file\temp\b.txt", "r")
b = file.read()
file.close()
file = open(r"c:\file\temp\c.txt", "w")
file.write(a + b)
file.close()

10.with 语法

使用with语法后,不需要我们在使用close()方法,with语法会自动帮我们关闭文件 
目的:清理资源
with open("a.txt","r",encoding="utf8") as file:
    # with 一旦离开了with代码块,文件就会自动关闭
    print(file.read())

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值