1.读写文件:
-
写一个文本文件text:内容为西安培华学院
with open('homework', 'w', encoding='UTF-8') as file_obj: file_obj.write('西安培华学院')
截图:
-
读取文本文件的内容
with open('homework', 'r', encoding='UTF-8') as file_obj: data = file_obj.read() print(data)
截图:
-
复制这个文件text,拷贝为text2
-
找一张图片,复制这个图片到copy.jpg
with open('amoy.jpg', 'rb') as pic_obj: data = pic_obj.read() with open('copy.jpg', 'wb') as pic_obj1: pic_obj1.write(data)
结果截图:
-
给定一个列表[“string1”, “string2”, “string3”], 将列表内容写入文件,每一个元素一行
list_data = ["string1", "string2", "string3"]
with open('homework', 'w') as file_obj:
file_obj.write('\n'.join(list_data))
截图:
2.异常
- 异常的完整格式,以及每个部分的意思
try:
要执行语句(有可能遇到异常)
a + b => 1 + 1 正常执行
=> 1 + "1" 执行的时候遇到异常
except [异常类型(可以省略) as name(变量赋值name)]:
做异常处理的语句
except 异常类型2:
处理2
except 异常处理3:
处理3
else:
try中的语句正常执行,要执行操作
finally:
始终都要的做的语句
# except 捕获, 异常类型: 捕获哪一种异常
# as name: 是将捕获到异常赋值给name(变量),那就可以用name去访问异常
-
常遇见的>=5中异常的处理
-
以及用异常处理来进行读写文件的文件关闭
-
如何主动抛出异常
Python 使用 raise 语句抛出一个指定的异常,raise 唯一的一个参数指定了要被抛出的异常。它必须是一个异常的实例或者是异常的类(也就是 Exception 的子类)。
try:
1 + 1
raise IndexError from ZeroDivisionError
except IndexError:
print("Handle Index Error")
raise IndexError from ZeroDivisionError
截图:
3.模块和包
-
什么叫模块?
在python中,一个.py文件就叫模块
使用模块的好处
(1)提高了代码的可维护性。
(2)代码不必从零开始,当一个模块编写完毕后,就可以被其他地方应用。
(3)可以避免函数名和变量名冲突,相同的函数名和变量可以存放在不同的模块中,但是要注意尽量不要与内置函数名字冲突。
-
如何导入模块,如何导入模块中的具体内容
1,临时添加模块完整路径
2,将模块保存到指定位置
3,设置环境变量
-
import语句的实质是什么?
Python中的import语句是用来调用模块的。
-
什么是包,包和目录的区别,init.py的作用
1, 包是模块的一种形式,包的本质就是一个含有.py的文件的文件夹。
2, 原来在python模块的每一个包中,都有一个__init__.py文件(这个文件定义了包的属性和方法)然后是一些模块文件和子目录,假如子目录中也有__init__.py那么它就是这个包的子包了。当你将一个包作为模块导入(比如从 xml导入 dom)的时候,实际上导入了它的__init__.py 文件。
3, 而目录跟包唯一不同的就是没有__init__.py 文件,一个包是一个带有特殊文件__init__.py 的目录,而__init__.py 文件定义了包的属性和方法。
2101.3001.7020)导入 dom)的时候,实际上导入了它的__init__.py 文件。
3, 而目录跟包唯一不同的就是没有__init__.py 文件,一个包是一个带有特殊文件__init__.py 的目录,而__init__.py 文件定义了包的属性和方法。
4,init.py的作用:该文件与Python的import机制有关,这关乎到你的哪些.py文件是对外可访问的。有些时候,如果一个包下有很多模块,在调用方import如此多模块是很费事,且不优雅的,此时可以通过修改_ _ init_ _.py来完成该任务。