Python学习 ——文件(持久化)和异常

文件

在Python中,我们能方便的操作文件:

with open("test.txt") as file:
    str=file.read()
    print(str)

open函数可以讲指定路径的文件读入到内存中,如果open函数内只有文件名,没有详细的路径地址,则open函数会在和Python脚本同级文件夹下寻找文件。
with 关键字会自动在文件不需要访问时关闭。如果没有with 关键字,则需要手动调用close()函数来关闭文件。

  • open(path,mode)函数负责打开一个文件,带有很多参数。第一参数必须有,文件的路径和名称
    mode:表明文件的打开方式

    • r:只读
    • w:写方式打开,会覆盖以前的内容
    • x: 创建的方式打开,如果文件存在会报错
    • a:append,以追加的方式对文件的内容进行写入
    • b:binary,二进制方式写入
    • t:文本方式打开
    • +:可读写
  • read(count):允许输入参数读取几个字符,如果没有制定,从当前位置读取到结尾。否则从当前位置读取制定字符数。

  • 文件写入:

    with open("test.txt","w") as file:
    file.write("Test Write") 
    

异常

在Python中和其他语言类似,异常是使用try-except代码块处理的:

try:
	尝试某种操作
except 异常类型1except 异常类型2...
else:
	没有发生异常的处理
finally:
	无论是否发生异常都会执行

Python系统异常类型

  • NameError:访问一个不存在的变量时抛出的异常
  • IndexError:超出对象索引的范围时抛出的异常
  • KeyError:在字典中查找一个不存在的key抛出的异常
  • ZeroDivisionError:进行数学运算时除数为0时会出现此异常
  • TypeError:类型错误,通常是不通类型之间的操作会出现此异常
  • SyntaxError:语法错误时会抛出此异常
  • AttributeError:当访问的对象属性不存在的时候抛出的异常

使用JSON存取文件

  • json.dumps():Python对象转JSON
  • json.loads():json字符串转Python可读取对象
import json
student={"name":"Lidian","age":18,"Phone":18508211005}
print(type(student))
stu_json=json.dumps(student)
with open("test.txt","w") as file:
    file.write(stu_json)
print("JSON对象:{0}".format(stu_json))
with open("test.txt") as file:
    stu_dict=json.loads(file.read())
    print(type(stu_dict))
    print(stu_dict)
输出结果:
<class 'dict'>
JSON对象:{"name": "Lidian", "age": 18, "Phone": 18508211005}
<class 'dict'>
{'name': 'Lidian', 'age': 18, 'Phone': 18508211005}
程序执行完之后:test.txt文件中的内容为:
{"name": "Lidian", "age": 18, "Phone": 18508211005}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值