Python_05集合、文件、异常和异常处理

2020/07/30

Python_05集合、文件、异常和异常处理

  • 集合
    • 1、集合的定义
    • 2、集合特点
    • 3、创建集合
    • 4、如何访问集合中的值
    • 5、frozanset()不可变集合
  • 文件
    • 6、什么是文件?
    • 7、打开并写入文件
      • ㈠文件打开模式
      • ㈡文件对象方法的使用
      • ㈢写入文件
    • 8、os模块中关于文件/目录常用的函数使用方法
    • 9、os.path模块中关于文件/目录常用的函数使用方法
    • 10、pickle模块
    • 11、异常
    • 12、异常处理
      • ㈠try - except语句
      • ㈡try-finally语句
      • ㈢raise语句

集合

1、集合的定义

用花括号{}括起来,但花括号里没有体现映射关系,你们这个{}括起来的就是一个集合
Python_05集合、文件、异常和异常处理_第1张图片

2、集合特点

唯一性,集合里重复的数会自动去掉并且集合是无序的,不支持索引

3、创建集合

⑴直接把一堆元素用花括号括起来
⑵使用set()工厂函数
Python_05集合、文件、异常和异常处理_第2张图片

4、如何访问集合中的值

⑴使用for把集合中的数据一个一个读取出来

⑵通过in和not in 判断一个元素是否在集合中已经存在
Python_05集合、文件、异常和异常处理_第3张图片

5、frozanset()不可变集合

Python_05集合、文件、异常和异常处理_第4张图片

文件

6、什么是文件?

⑴.exe可执行文件
⑵.txt文本
⑶.ppt是PowoePoint格式
⑷.jpg图片
⑸.mp4视频
⑹.avi视频

7、打开并写入文件

open()函数打开,并返回打开的对象

f  =  open(路径,打开方式.....)

在这里插入图片描述
第一个参数是文件名,第二个是文件的打开模式

㈠文件打开模式

(1)‘r’
以只读方式打开文件(默认)
(2)‘w’
以写入的方式打开文件,会覆盖已存在的文件
(3)‘x’
如果文件已经存在,使用此模式打开将引发异常
(4)‘a’
以写入模式打开,如果文件存在,则在末尾追加写入
(5)‘b’
以二进制模式打开文件
(6)‘t’
以文本模式打开(默认)
(7)’+’
可读写模式(可添加到其他模式中使用)
(8)‘U’
通用换行符支持

㈡文件对象方法的使用

⑴f.close0
关闭文件
⑵f.read(size=-1)
从文件读取size个字符,当末给定size或给定负值的时候,读取剩余的所有字符,然后作为字符串返回
⑶f.readline0
以写入模式打开,如果文件存在,则在末尾追加写入
⑷f.write(str)
将字符串str写入文件
⑸f.writelines(seq)
向文件写入字符串序列seq,seq应该是一个返回字符串的可迭代对象
⑹f.seek(offset,from)
在文件中移动文件指针,从from ( 0代表文件起始位置,1代表当前位置, 2代表文件末尾)偏移offset个字节
⑺f.tell()
返回当前在文件中的位置

㈢写入文件

Python_05集合、文件、异常和异常处理_第5张图片

8、os模块中关于文件/目录常用的函数使用方法

需导入os才可使用

import os

(1)getcwd()
返回当前工作目录
(2)chdir(path)
改变工作目录
(3)lisdir(path=’.’)
列举指定目录中的文件名( ‘.‘表示当前目录,’ …‘表示上一级目录)
(4)mkdir(path)
创建单层目录,如该目录已存在抛出异常
(5)makedirs(path)
递归创建多层目录,如该目录已存在抛出异常,注意: ‘E:\a\b’和’E:\a\c’并不会冲突
(6)remove(path)
删除文件
(7)rmdir(path)
删除单层目录,如该目录非空则抛出异常
(8)removedirs(path)
递归删除目录 ,从子目录到父目录逐层尝试删除,遇到目录非空则抛出异常
(9)rename(old, new)
将文件old重命名为new
(10)system(command)
运行系统的shell命令
以下是支持路径操作中常用到的一一些定义,支持所有平台
(11)os.curdir
指代当前目录(’.’ )
(12)os.pardir
指代上一级目录(’…’)
(13)os.sep
输出操作系统特定的路径分隔符( Win下为’\’ , Linux下为’/ ‘)
(14)os.inesep
当前平台使用的行终止符( Win下为’\r\n’ , Linux下为’\n’ )
(15)os.name
指代当前使用的操作系统(包括: ‘posix’, ‘nt, ‘mac’, ‘os2’, ‘ce’, "java’ )

9、os.path模块中关于文件/目录常用的函数使用方法

(1)basename(path)
去掉目录路径 ,单独返回文件名
(2)dirname(path)
去掉文件名 ,单独返回目录路径
(3)join(path1[,path2[,…]])
将path1, path2各部分组合成一个路径名
(4)split(path)
分割文件名与路径,返回(f_ path, f_ name)元组。如果完全使用目录,它也会将最后一个目录作为文件名分离,且不会判断文件或者目录是否存在
(5)splitext(path)
分离文件名与扩展名,返回(f_ name,f extension)元组
(6)getsize(file)
返回指定文件的尺寸,单位是字节
(7)getatime(file)
返回指定文件最近的访问时间(浮点型秒数,可用time模块的gmtime(或localtime(函数换算)
(8)getctime(file)
返回指定文件的创建时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算)
(9)getmtime(file)
返回指定文件最新的修改时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算)
以下为函数返回True或False
(1)exists(path)
判断指定路径(目录或文件)是否存在
(2)isabs(path)
判断指定路径是否为绝对路径
(3)isdir(path)
判断指定路径是否存在且是一一个目录
(4)isfile(path)
判断指定路径是否存在且是一个文件
(5)islink(path)
判断指定路径是否存在且是一个符号链接
(6)ismount(path)
判断指定路径是否存在且是一个挂载点
(7)samefile(path1,paht2)
判断path1和path2两个路径是否指向同一个文件

10、pickle模块

import pickle

几乎可以将Python所有的文件都转换成二进制的形式存放,存放:pickling;将字节流就是二进制转换成对象的过程称为读取,读取:unpickling
Python_05集合、文件、异常和异常处理_第6张图片
Python_05集合、文件、异常和异常处理_第7张图片
异常和异常处理

11、异常

12、异常处理

㈠try - except语句

语法:

try:
	检测范围
except Exception[as reason]:
	出现异常(Exception) 后的处理代码
	

Python_05集合、文件、异常和异常处理_第8张图片
注意:
Ⅰ、 try语句一旦被检测处异常,则该异常语句后面的程序将不会被执行
、except后可以写成元组的形式

except(OSError,TypeError):
	print('出错了')

㈡try-finally语句

语法:

try:
	检测范围
except Exception[as reason]:
	出现异常(Exception) 后的处理代码
finally:
	无论如何都会被执行的代码
	

Python_05集合、文件、异常和异常处理_第9张图片

㈢raise语句

raise 异常的名字
例如:

raise ZeroDivisionError('除数为零的异常')

你可能感兴趣的:(笔记,python)