IO编程-文件读写

注意:1.系统不允许普通程序直接操作磁盘,所以读写文件实际是请求系统打开文件对象(文件描述符)

          2.python语言是按顺序执行的,一条条代码往下执行

【读】

1、读文件模式打开文件对象 open()

    a. 读取 utf-8 文本文件 -->‘r’

 f = open('/Users/michael/test.txt', 'r')

    b. 读取二进制文件(如视频、图片等)-->'rb'

>>> f = open('/Users/michael/test.jpg', 'rb')
>>> f.read()
b'\xff\xd8\xff\xe1\x00\x18Exif\x00\x00...' # 十六进制表示的字节

   c. 读取非UTF-8编码文件--> open()传入encoding参数

>>> f = open('/Users/michael/gbk.txt', 'r', encoding='gbk')
>>> f.read()

2、打开失败:返回错误码

     打开成功: 全读-----f.read()------ (小文件)一次性全部读取,数据太多内存会爆

                      大小读---f.read(size)--(不确定文件大小)

                      按行读---f.readline()---(配置文件)

                      关闭-----f.close()


3、f.read()失败,导致无法关闭。 使用try...finally, 无论前面是否出错 都能关闭文件。

try:
    f = open('/path/to/file', 'r')
    print(f.read())
finally:
    if f:
        f.close()

【写】

1、写文件 open()   (直到调用close()才能确保数据全部写入,否则可能只写了一部分)

a. 写文本文件 -->‘w’

b. 写二进制文件 -->‘wb’

【查看操作系统类型】

>>> import os
>>> os.name # 操作系统类型

 输出: posix--Linux、Unix (详细信息用uname() 但是Windows下面没有)

           nt------Windows



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值