Python读取文件以及异常处理

Python读写文件

Python通常使用open(name[, mode[, buffering]])指定文件名、操作模式、编码信息等对文件进行读写。其中mode指打开文件的模式:

操作模式含义
r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
w写入,会截断之前写入的内容
x写入,如果文件已经存在会产生异常
a追加,将文件写入原有文件的末尾
b二进制模式
t文本模式(默认)
+更新,既可以读又可以写

举个例子

def main():
    f = open('致橡树.txt', 'r', encoding='utf-8')
    print(f.read())
    f.close()

if __name__ == '__main__':
    main()

python文件编码说明:#-*-coding:gbk-*-
在读写文件时,通过encoding函数指定编码

Python异常机制

def main():
    try:
        with open('read.txt','r',encoding='utf-8') as f:
            print(f.read())
    except FileNotFoundError:
        print('无法打开指定文件')
    except LookupError:
        print('指定了未知的编码')
    except UnicodeDecodeError:
        print('读文件时解码错误')


if __name__ == '__main__':
    main()

  • FileNotFoundError 无法找到文件
  • LookupError 指定未知的编码
  • UnicodeDecodeError 读取文件时没有按指定的编码解码

Python读写json文件

json中数据类型与Python中数据类型的对应关系

JsonPython
objectdict
arraylist
stringstr
number(int/real)int/float
true/falseTrue/Flase
nullNone

Json模块主要的四个比较重要的函数:

dump将python对象按照Json格式序列化到文件中
dumps将python对象处理成Json格式的字符串
load将文件中的Json数据反序列化成对象
loads将字符串的内容反序列化成Python对象

序列化(serialization)在计算机科学的数据处理中,是指将数据结构或对象状态转换为可以存储或传输的形式,这样在需要的时候能够恢复到原先的状态,而且通过序列化的数据重新获取字节时,可以利用这些字节来产生原始对象的副本(拷贝)。与这个过程相反的动作,即从一系列字节中提取数据结构的操作,就是反序列化(deserialization)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值