Python文件操作(一)

1. 打开文件

使用open()函数打开一个文件

  • 参数:file要打开文件的名字–路径
  • 返回值:返回一个对象,这个对象就代表当前打开文件
# 创建一个变量,保存文件的名字
# 如果目标文件和当前文件在同一级,可以直接使用文件名即可;也可以使用绝对路径
filename = "cc.txt"

# 在windows系统使用路径时,可以使用/来代替\
# 或者可以使用//代替/;也可以使用原始字符串
file_name = "can\\cc.txt"
file_name = r"can\cc.txt"

# 打开文件
file_obj = open(filename)
print(file_obj)

2. 读文件

  • read(),用来读取文件中的内容,它将内容保存为一个字符串返回
file_name = "cc.txt"

# 调用open()来打开文件
file_obj = open(file_name)

# 读取文件内容
# 当获取了文件对象后,所有的对文件的操作都应该通过对象来进行

c = file_obj.read()
print(c)
print(type(c))  # <class 'str'>

3. 调用close()关闭文件

  • 文件使用完毕后必须关闭,因为文件对象会占用操作系统的资源,并且操作系统同一时间能打开的文件数量也是有限的
file_obj.close()

4.with open …as语句

  • 由于文件读写时都有可能产生 IOError ,一旦出错,后面的 close() 就不会调用;
  • 所以Python引入了 with open() 来自动调用close()方法,无论是否出错
file_name = "cc.txt"

with open(file_name) as file_obj:
    #with语句中可以直接使用file_obj来文件操作
    #此时这个文件只能在with中使用,一旦with结束文件会自动colse()
    print(file_obj.read())

优化代码,结合try...expect

file_name="can.txt"

try:
    with open(file_name) as file_obj1:
        print(file_obj1.read())
except FileNotFoundError:
    print("文件不存在")

5.open()with open() 区别

1)open需要主动调用close(),with不需要;

2)open读取文件时发生异常,没有任何处理,with有很好的处理上下文产生的异常;

  • 用with同时操作多个文件
with open("cc.txt") as f1, open("can,txt") as f2:
    print(f1.read())
    print(f2.read())
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值