Python学习笔记9(文件和异常)

第九章 文件和异常

9.1 读取文件

with open('name.txt') as f:
    contents = f.read()
    print(contents)

9.1.1 逐行读取

with open('name.txt') as f:
    for line in f:
        print(line)

9.1.2 将每行内容存储在列表中

filename = 'name.txt'
with open(filename) as f:
    list = f.readlines() #readlines方法从文件中读取每一行。
for l in list:
    print(l)    

9.1.3 使用文件的内容

filename = 'yzl.txt'
with open(filename) as f:
    list = f.readlines()
yzl_string = ''
for l in list:
    yzl_string += l
print(yzl_string)    

9.2 写入文件(w)
9.2.1 写入空文件

filename = 'write.txt'
with open(filename, 'w') as f:
    f.write('我喜欢编程!')

9.2.2 附加到文件(a)
给文件添加内容而不是覆盖内容。

filename = 'add.txt'
with open(filename, 'a') as f:
    f.write('这句话会添加到文件的末尾!')    

9.3 异常
异常是使用try-except代码块处理的。

try:
    print(5/0)
except ZeroDivisionError:
    print("不能除0")    

将可能导致错误的代码放在try代码块中。
将指出错误的代码放在except代码块中。

9.4 分析文本

filename = 'usersname.txt'

try:
    with open(filename) as f:
        content = f.read()
except FileNotFoundError:
    print("没有此文件!")
else:
    words = content.split()
    num_words = len(words)
    print("这个文件包括" + str(num_words) + "个字。")

方法split()以空格为分隔符将字符串拆分成多个部分,并将这些部分都存储到一个列表中。

9.5 使用json模块存储数据
9.5.1 json.dump()和json.load()

json.dump()用来存储数据
函数json.dump()接受两个实参:要存储的数据以及可用于存储数据的文件对象。

import json
numbers = [1, 2, 3]
filename = 'numbers.json'
with open(filename, 'w') as f:
    json.dump(numbers, f)

json.load()用来读取
import json
filename = 'numbers.json'
with open(filename) as f:
    numbers = json.load(f)

猜你喜欢

转载自blog.csdn.net/weixin_43670190/article/details/106421879