美文网首页
新2019计划:python学习-文件和异常【7】

新2019计划:python学习-文件和异常【7】

作者: 克里斯托弗的梦想 | 来源:发表于2019-02-25 23:37 被阅读0次

本篇章主要讲述文件的读写函数,读写方式,比如如何一次性读取整个文件,一行一行的读取文件,以及如何将文本附加到文件末尾,异常的常见情况,如何处理异常,以及如何利用json存储数据。

文件

读取整个文件

filename = 'pi_digits.txt'
with open(filename) as file_object:
    contents = file_object.read()
    print(contents)

逐行读取

filename = 'pi_digits.txt'
with open(filename) as file_object:
    for line in file_object:
        print(line.strip())

创建一个包含文件各行内容的列表

filename = 'pi_digits.txt'
with open(filename) as file_object:
    contents = file_object.readlines()

for line in lines:
    print(line.strip())

写入文件
读写模式有:读取文件模式r,写入文件模式w,附加模式a,或者能够读取和写入文件的模式r+,如果省略了模式参数,python默认是只读模式打开文件。

注意:w模式打开文件要小心,因为如果指定的文件已经存在,python将在返回文件对象前清空该文件。

filename = 'programming.txt'

with open(filename, 'w') as file_object:
    file_object.write("I love programming")

写入文件

filename = 'programming.txt'

with open(filename, 'w') as file_object:
    file_object.write("I love programming\n")
    file_object.write("I love creating new games\n")

附加到文件

filename = 'programming.txt'

with open(filename, 'w') as file_object:
    file_object.write("I also love programming\n")
    file_object.write("haha, I love creating new games\n")

异常

Python使用被称为异常的特殊对象来管理程序执行期间发生的错误。每当发生让Python不知 所措的错误时,它都会创建一个异常对象。如果你编写了处理该异常的代码,程序将继续运行; 如果你未对异常进行处理,程序将停止,并显示一个traceback,其中包含有关异常的报告。

使用try-except代码块

try:
    print(5/0)
except ZeroDivisionError:
    print("You can't divide by zero!")

else模块
通过将可能引发错误的代码放在try-except代码块中,可提高这个程序抵御错误的能力。错 误是执行除法运算的代码行导致的,因此我们需要将它放到try-except代码块中。这个示例还包 含一个else代码块;依赖于try代码块成功执行的代码都应放到else代码块中。

answer = 5/2
try:
    print(answer)
except ZeroDivisionError:
    print("You can't divide by zero!")
else:
    print(answer)

备注:还有类似FileNotFoundError文件找不到错误,以及在except模块中一声不吭,也就是说pass替代执行的语句。
json.dump()和json.load()
来编写一个存储一组数字的简短程序,再编写一个将这些数字读取到内存中的程序。第 一个程序将使用json.dump()来存储这组数字,而第二个程序将使用json.load()。

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

import json
numbers = [2, 3, 5, 7, 11, 13]
filename = 'numbers.json'
with open(filename, 'w') as f_obj:
    json.dump(numbers, f_obj)

使用json.load()将这个列表读取到内存中.

import json
numbers = [2, 3, 5, 7, 11, 13]
filename = 'numbers.json'
with open(filename as f_obj:
    numbers = json.load(f_obj)

print(numbers)

合并json.dump()和json.load()两个函数

filename = 'username.json'
try:
    with open(filname) as f_obj:
        username = json.load(f_obj)
except FileNotFoundError:
    username = input('what is your name?')
    with open(filename, 'w') as f_obj:
        json.dump(username, f_obj)
        print("We'll remember you when you come back, " + username + "!")
else:
    print("Welcome back, " + username + "!")

相关文章

  • 新2019计划:python学习-文件和异常【7】

    本篇章主要讲述文件的读写函数,读写方式,比如如何一次性读取整个文件,一行一行的读取文件,以及如何将文本附加到文件末...

  • python学习笔记目录

    Python学习笔记目录(倒序) Python学习-异常 Python学习-面向对象 Python学习-文件系统 ...

  • python的学习方向

    我的学习计划: 1、Python基础语法、python字符串解析、python时间和日历、python文件操作,数...

  • day11-文件操作、json文件和异常捕获

      今天主要学习python中的文件操作、json文件和异常捕获三个内容。   一、文件操作   基本过程:打开文...

  • python文件和异常

    10.1.3 逐步读取 读取文件时,常常需要检查其中的每一行,要以每次一行的方式检查文件,可对文件对象使用for循...

  • Python——文件和异常

    从文件中读取数据 使用文本文件中的信息,首先需要将信息读取到内存中。可以选择一次性读取文件的全部内容,也可以选择逐...

  • Python:文件和异常

    从文件中读取数据 读取整个文件 函数open()接受一个文件名作为参数,将文件内容存储在as后面指定的对象中。使用...

  • Python文件和异常

    文件读取 写入文件 异常处理 存储数据的实例 1、从文件中读取数据 file_reader.py open() 打...

  • 读书笔记 | Python学习之旅 Day8

    Python学习之旅 读书笔记系列 Day 8 《Python编程从入门到实践》 第10章 文件和异常 知识点 文...

  • Python基础学习【9】-文件和异常

    学习处理文件和保存数据可让你的程序使用起来更容易,学习处理异常可帮助你应对文件不存在的情况,以及其他可能导致程序崩...

网友评论

      本文标题:新2019计划:python学习-文件和异常【7】

      本文链接:https://www.haomeiwen.com/subject/vsznyqtx.html