python基础⑤-数据文件的读写操作、异常的抛出

/ 0评 / 1

导读:捕获异常的方法

#捕获异常   (格式)
'''
try:
       执行语句、判断语句、单独变量等等
except 异常错误名:     #输入多个错误,使用[ValueError,Error]间隔开来
       如果try语句报错,则执行该语句部分
else:(可选语句)          
       如果上述try语句没有报错,则执行该语句部分
finally:(可选语句)(强制执行语句)
       上述try语句无论是否报错,都要执行该执行的部分


#循环案例
''''''
for i in range(1,10):
       print("你好")
       print(i)
'''
try:
       mobile = int(input('请输入正确的手机号'))
       name = input("请输入姓名")

#案例
except ValueError:
       print("请输入正确的手机号")
else:
       print("手机号输入正确")
finally:
       print("无论上述代码对错,均运行此语句")


干货:
print(u"文本")  #Unicode的缩写,将UF-8文本
print(r"文本")#取消转义字符
路径中使用(D:\\Program Files (x86)\\KuGou\\nKGMusic\\abc.txt)  #使用双斜杠(\\)效果与上述r相同


一、数据的读取

1、数据的读取

#文件的创建
#a = open(r"F:\abc.txt","w")              #新建文件(如果有,则覆盖原文件)
a = open(r"F:\abc.txt","r")                 #打开文件(如果没有,则提示文件未找到)
b = a.read()         #打开文件
print(b)             #将打开的文件打印
a.close()            #关闭打开的文件(一定要关闭)

2、在read中,加入数字,可指定读取的字符数


#b=a.readline()   #读取第一行数据
#c=a.read()    #读取剩余全部数据
d=a.readlines()   #读取全部数据,把数据用列表的形式进行展示,包含换行转义字符
print(d)
a.close()

3、文本文件的读取

a = open(r'F:\abc.txt','r')
b = a.readline()   #读取第一行内容
print(b)

c = a.read()         #读取剩余的全部内容
print(c)
a.close()

5、文本文件的读取(常用控件)

6、常用的

模式
描述
r
以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb
以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
r+
打开一个文件用于读写。文件指针将会放在文件的开头。
rb+
以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
w
打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
Wb
以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
W+
打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
Wb+
以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
a
打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab
以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+
打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+
以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

数据文件的读写操作.py

#文件的创建
#a = open(r"F:\abc.txt","w")              #新建文件(如果有,则覆盖原文件)
a = open(r"F:\abc.txt","r")                 #打开文件(如果没有,则提示文件未找到)
b = a.read()         #打开文件
print(b)             #将打开的文件打印
a.close()            #关闭打开的文件(一定要关闭)

#文件的写入
a = open(r'F:\abc.txt','w')
a.write("星星点灯照\n亮我的家园\n星星之火\n可以燎原")
a.close()

#读取文件数据
a = open(r'F:\abc.txt','r')
b = a.readline()   #读取第一行内容
print(b)

c = a.read()         #读取剩余的全部内容
print(c)
a.close()

#读取文件数据(循环语句)
a = open(r'F:\abc.txt','r')
for i in range(1,4):      #循环读取第一至第四行数据
       b = a.readline()     #读取第一行的数据
       print(b)

a.close()

作业:

#(2) 在D盘下创建一个文件Blowing in the wind.txt,即‘D:\Blowing in the wind.txt’
b = open(r'D:\Blowing in the wind.txt','w')


t1 = 'How many roads must a man walk down'
t2 = 'Before they call him a man'
t3 = 'How many seas must a white dove sail'
t4 = 'Before she sleeps in the sand'
t5 = 'How many times must the cannon balls fly'
t6 = "Before they're forever banned"
t7 = 'The answer my friend is blowing in the wind'
t8 = 'The answer is blowing in the wind'
b.write(t1+'\n'+t2+'\n'+t3+'\n'+t4+'\n'+t5+'\n'+t6+'\n'+t7+'\n'+t8+'\n')
b.close()

第七讲 文件的打开作业(2019年7月24日).py

二、错误和异常(异常处理、抛出异常

2.1    什么是异常?

2.2    try-except捕获异常

2.3    else关键字

2.4    异常处理方式

2.5    finally清理

2.6    抛出异常处理方式

2.   常见的错误和异常

异常名称
描述
BaseEXcepton
所有异常的基类
SystemExit
解释器请求退出
Kevboardnterrunt
用户中断执行(通常是输入^C)
Excepton
常规错误的基类
Stoplteration
迭代器没有更多的值
GeneratorExit
生成器(generaor)发生异常来通知退出
StandardError
所有的内建标准异常的基类
ArithmeticError
所有数值计算错误的基类
异常名称
描述
FloatingPointError
浮点计算错误
OverflowError
数值运算超出最大限制
ZeroDivisionError
除(或取模)零(所有数据类型)
AssertonError
断言语句失败
AttributeError
对象没有这个属性
EOFError
没有内建输入,到达EOF标记
EnvironmentError
操作系统错误的基类
IOError
输入/输出操作失败
异常名称
描述
OSError
操作系统错误
WindowsError
系统调用失败
importError
导入模块/对象失败
LookupError
无效数据查询的基类
indexError
序列中没有此索引(index)
KeyError
映射中没有这个键
MemoryError
内存溢出错误(对于Python解释器不是致命的)
NameError
未声明/初始化对象(没有属性)
异常名称
描述(加粗字体表示常用方法)
UnboundLocalError
访问未初始化的本地变量
ReferenceError
弱引用(Weak reference)试图访问已经垃圾回收了的对象
RuntmeError
一般的运行时错误
NotlmplementedError
尚未实现的方法
SyntaxError
Python语法错误
IndentationError
缩进错误
TabError
Tab和空格混用
SyStemError
一般的解释器系统错误
异常名称
描述
TypeError
对类型无效的操作
ValueError
传入无效的参数
UniCodeError
Unicode相关的错误
UnicodeDecodeError
Unicode解码时的错误
UniCodeEncOdeError
Unicode编码时错误
UnicodeTranSlateError
Unicode转换时错误
Warning
警告的基类
DeprecatOnWarning
关于被弃用的特征的警告
异常名称
描述
FutureWarinng
关于构造将来语义会有改变的警告
overflowWarning
旧的关于自动提升为长整型(long)的警告
PendingDeprecationWaning
关于特性将会被废弃的警告
RuntimeWarning
可疑的运行时行为(runtime behavior)的警告
SyntaxWarning
可疑的语法的警告
Usewarnng
用户代码生成的警告