Vs code 扩展 Python语言支持: Pythn扩展AI编程助手: Fitten Code : Faster and Better AI Assistant 扩展
# 创建虚拟环境(命名为'.venv'是常见约定)
python3 -m venv .venv
python -m venv --system-site-packages .venv(继承系统环境)
激活虚拟环境 Windows
.venv\Scripts\activate
linux
source .venv/bin/activate
导出依赖
(.venv) pip freeze > requirements.txt
从文件安装依赖
(.venv) pip install -r requirements.txt
退出虚拟环境
deactivate
删除虚拟环境
# 确保已退出环境
deactivate
# 删除目录
rm -rf .venv # Linux/macOS
del /s /q .venv # Windows (命令提示符)
默认情况下,Python3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串
# -*- coding: cp-1252 -*-
类别 关键字 说明
逻辑值 True 布尔真值
False 布尔假值
None 表示空值或无值
逻辑运算 and 逻辑与运算
or 逻辑或运算
not 逻辑非运算
条件控制 if 条件判断语句
elif 否则如果(else if 的缩写)
else 否则分支
循环控制 for 迭代循环
while 条件循环
break 跳出循环
continue 跳过当前循环的剩余部分,进入下一次迭代
异常处理 try 尝试执行代码块
except 捕获异常
finally 无论是否发生异常都会执行的代码块
raise 抛出异常
函数定义 def 定义函数
return 从函数返回值
lambda 创建匿名函数
类与对象 class 定义类
del 删除对象引用
模块导入 import 导入模块
from 从模块导入特定部分
as 为导入的模块或对象创建别名
作用域 global 声明全局变量
nonlocal 声明非局部变量(用于嵌套函数)
异步编程 async 声明异步函数
await 等待异步操作完成
其他 assert 断言,用于测试条件是否为真
in 检查成员关系
is 检查对象身份(是否是同一个对象)
pass 空语句,用于占位
with 上下文管理器,用于资源管理
yield 从生成器函数返回值
数据结构。
列表
Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能。
以下是 Python 中列表的方法:
方法 描述
list.append(x) 把一个元素添加到列表的结尾,相当于 a[len(a):] = [x]。
list.extend(L) 通过添加指定列表的所有元素来扩充列表,相当于 a[len(a):] = L。
list.insert(i, x) 在指定位置插入一个元素。第一个参数是准备插入到其前面的那个元素的索引,例如 a.insert(0, x) 会插入到整个列表之前,而 a.insert(len(a), x) 相当于 a.append(x) 。
list.remove(x) 删除列表中值为 x 的第一个元素。如果没有这样的元素,就会返回一个错误。
list.pop([i]) 从列表的指定位置移除元素,并将其返回。如果没有指定索引,a.pop()返回最后一个元素。元素随即从列表中被移除。(方法中 i 两边的方括号表示这个参数是可选的,而不是要求你输入一对方括号,你会经常在 Python 库参考手册中遇到这样的标记。)
list.clear() 移除列表中的所有项,等于del a[:]。
list.index(x) 返回列表中第一个值为 x 的元素的索引。如果没有匹配的元素就会返回一个错误。
list.count(x) 返回 x 在列表中出现的次数。
list.sort() 对列表中的元素进行排序。
list.reverse() 倒排列表中的元素。
list.copy() 返回列表的浅复制,等于a[:]。
文件
open() 方法
Python open() 方法用于打开一个文件,并返回文件对象。
在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError。
注意:使用 open() 方法一定要保证关闭文件对象,即调用 close() 方法。
open() 函数常用形式是接收两个参数:文件名(file)和模式(mode)。
open(file, mode='r')完整的语法格式为:
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)参数说明:
●file: 必需,文件路径(相对或者绝对路径)。
●mode: 可选,文件打开模式
●buffering: 设置缓冲
●encoding: 一般使用utf8
●errors: 报错级别
●newline: 区分换行符
●closefd: 传入的file参数类型
●opener: 设置自定义开启器,开启器的返回值必须是一个打开的文件描述符。
mode 参数有:
模式 描述
t 文本模式 (默认)。
x 写模式,新建一个文件,如果该文件已存在则会报错。
b 二进制模式。
+ 打开一个文件进行更新(可读可写)。
U 通用换行模式(Python 3 不支持)。
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
w 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
w+ 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
默认为文本模式,如果要以二进制模式打开,加上 b 。
file 对象使用 open 函数来创建,下表列出了 file 对象常用的函数:
序号 方法及描述
1 https://www.runoob.com/python3/python3-file-close.html
关闭文件。关闭后文件不能再进行读写操作。
2 https://www.runoob.com/python3/python3-file-flush.html
刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件, 而不是被动的等待输出缓冲区写入。
3 https://www.runoob.com/python3/python3-file-fileno.html
返回一个整型的文件描述符(file descriptor FD 整型), 可以用在如os模块的read方法等一些底层操作上。
4 https://www.runoob.com/python3/python3-file-isatty.html
如果文件连接到一个终端设备返回 True,否则返回 False。
5 https://www.runoob.com/python3/python3-file-next.html
Python 3 中的 File 对象不支持 next() 方法。
返回文件下一行。
6 https://www.runoob.com/python3/python3-file-read.html
从文件读取指定的字节数,如果未给定或为负则读取所有。
7 https://www.runoob.com/python3/python3-file-readline.html
读取整行,包括 "\n" 字符。
8 https://www.runoob.com/python3/python3-file-readlines.html
读取所有行并返回列表,若给定sizeint>0,返回总和大约为sizeint字节的行, 实际读取值可能比 sizeint 较大, 因为需要填充缓冲区。
9 https://www.runoob.com/python3/python3-file-seek.html
移动文件读取指针到指定位置
10 https://www.runoob.com/python3/python3-file-tell.html
返回文件当前位置。
11 https://www.runoob.com/python3/python3-file-truncate.html
从文件的首行首字符开始截断,截断文件为 size 个字符,无 size 表示从当前位置截断;截断之后后面的所有字符被删除,其中 windows 系统下的换行代表2个字符大小。
12 https://www.runoob.com/python3/python3-file-write.html
将字符串写入文件,返回的是写入的字符长度。
13 https://www.runoob.com/python3/python3-file-writelines.html
向文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符。
os 模块提供了非常丰富的方法用来处理文件和目录。常用的方法如下表所示:
序号 方法及描述
1 https://www.runoob.com/python3/python3-os-access.html
检验权限模式
2 https://www.runoob.com/python3/python3-os-chdir.html
改变当前工作目录
3 https://www.runoob.com/python3/python3-os-chflags.html
设置路径的标记为数字标记。
4 https://www.runoob.com/python3/python3-os-chmod.html
更改权限
5 https://www.runoob.com/python3/python3-os-chown.html
更改文件所有者
6 https://www.runoob.com/python3/python3-os-chroot.html
改变当前进程的根目录
7 https://www.runoob.com/python3/python3-os-close.html
关闭文件描述符 fd
8 https://www.runoob.com/python3/python3-os-closerange.html
关闭所有文件描述符,从 fd_low (包含) 到 fd_high (不包含), 错误会忽略
9 https://www.runoob.com/python3/python3-os-dup.html
复制文件描述符 fd
10 https://www.runoob.com/python3/python3-os-dup2.html
将一个文件描述符 fd 复制到另一个 fd2
11 https://www.runoob.com/python3/python3-os-fchdir.html
通过文件描述符改变当前工作目录
12 https://www.runoob.com/python3/python3-os-fchmod.html
改变一个文件的访问权限,该文件由参数fd指定,参数mode是Unix下的文件访问权限。
13 https://www.runoob.com/python3/python3-os-fchown.html
修改一个文件的所有权,这个函数修改一个文件的用户ID和用户组ID,该文件由文件描述符fd指定。
14 https://www.runoob.com/python3/python3-os-fdatasync.html
强制将文件写入磁盘,该文件由文件描述符fd指定,但是不强制更新文件的状态信息。
15 https://www.runoob.com/python3/python3-os-fdopen.html
通过文件描述符 fd 创建一个文件对象,并返回这个文件对象
16 https://www.runoob.com/python3/python3-os-fpathconf.html
返回一个打开的文件的系统配置信息。name为检索的系统配置的值,它也许是一个定义系统值的字符串,这些名字在很多标准中指定(POSIX.1, Unix 95, Unix 98, 和其它)。
17 https://www.runoob.com/python3/python3-os-fstat.html
返回文件描述符fd的状态,像stat()。
18 https://www.runoob.com/python3/python3-os-fstatvfs.html
返回包含文件描述符fd的文件的文件系统的信息,Python 3.3 相等于 statvfs()。
19 https://www.runoob.com/python3/python3-os-fsync.html
强制将文件描述符为fd的文件写入硬盘。
20 https://www.runoob.com/python3/python3-os-ftruncate.html
裁剪文件描述符fd对应的文件, 所以它最大不能超过文件大小。
21 https://www.runoob.com/python3/python3-os-getcwd.html
返回当前工作目录
22 https://www.runoob.com/python3/python3-os-getcwdb.html
返回一个当前工作目录的Unicode对象
23 https://www.runoob.com/python3/python3-os-isatty.html
如果文件描述符fd是打开的,同时与tty(-like)设备相连,则返回true, 否则False。
24 https://www.runoob.com/python3/python3-os-lchflags.html
设置路径的标记为数字标记,类似 chflags(),但是没有软链接
25 https://www.runoob.com/python3/python3-os-lchmod.html
修改连接文件权限
26 https://www.runoob.com/python3/python3-os-lchown.html
更改文件所有者,类似 chown,但是不追踪链接。
27 https://www.runoob.com/python3/python3-os-link.html
创建硬链接,名为参数 dst,指向参数 src
28 https://www.runoob.com/python3/python3-os-listdir.html
返回path指定的文件夹包含的文件或文件夹的名字的列表。
29 https://www.runoob.com/python3/python3-os-lseek.html
设置文件描述符 fd当前位置为pos, how方式修改: SEEK_SET 或者 0 设置从文件开始的计算的pos; SEEK_CUR或者 1 则从当前位置计算; os.SEEK_END或者2则从文件尾部开始. 在unix,Windows中有效
30 https://www.runoob.com/python3/python3-os-lstat.html
像stat(),但是没有软链接
31 https://www.runoob.com/python3/python3-os-major.html
从原始的设备号中提取设备major号码 (使用stat中的st_dev或者st_rdev field)。
32 https://www.runoob.com/python3/python3-os-makedev.html
以major和minor设备号组成一个原始设备号
33 https://www.runoob.com/python3/python3-os-makedirs.html
递归文件夹创建函数。像mkdir(), 但创建的所有intermediate-level文件夹需要包含子文件夹。
34 https://www.runoob.com/python3/python3-os-minor.html
从原始的设备号中提取设备minor号码 (使用stat中的st_dev或者st_rdev field )。
35 https://www.runoob.com/python3/python3-os-mkdir.html
以数字mode的mode创建一个名为path的文件夹.默认的 mode 是 0777 (八进制)。
36 https://www.runoob.com/python3/python3-os-mkfifo.html
创建命名管道,mode 为数字,默认为 0666 (八进制)
37 https://www.runoob.com/python3/python3-os-mknod.html
创建一个名为filename文件系统节点(文件,设备特别文件或者命名pipe)。
38 https://www.runoob.com/python3/python3-os-open.html
打开一个文件,并且设置需要的打开选项,mode参数是可选的
39 https://www.runoob.com/python3/python3-os-openpty.html
打开一个新的伪终端对。返回 pty 和 tty的文件描述符。
40 https://www.runoob.com/python3/python3-os-pathconf.html
返回相关文件的系统配置信息。
41 https://www.runoob.com/python3/python3-os-pipe.html
创建一个管道. 返回一对文件描述符(r, w) 分别为读和写
42 https://www.runoob.com/python3/python3-os-popen.html
从一个 command 打开一个管道
43 https://www.runoob.com/python3/python3-os-read.html
从文件描述符 fd 中读取最多 n 个字节,返回包含读取字节的字符串,文件描述符 fd对应文件已达到结尾, 返回一个空字符串。
44 https://www.runoob.com/python3/python3-os-readlink.html
返回软链接所指向的文件
45 https://www.runoob.com/python3/python3-os-remove.html
删除路径为path的文件。如果path 是一个文件夹,将抛出OSError; 查看下面的rmdir()删除一个 directory。
46 https://www.runoob.com/python3/python3-os-removedirs.html
递归删除目录。
47 https://www.runoob.com/python3/python3-os-rename.html
重命名文件或目录,从 src 到 dst
48 https://www.runoob.com/python3/python3-os-renames.html
递归地对目录进行更名,也可以对文件进行更名。
49 https://www.runoob.com/python3/python3-os-rmdir.html
删除path指定的空目录,如果目录非空,则抛出一个OSError异常。
50 https://www.runoob.com/python3/python3-os-stat.html
获取path指定的路径的信息,功能等同于C API中的stat()系统调用。
51 https://www.runoob.com/python3/python3-os-stat_float_times.html
决定stat_result是否以float对象显示时间戳
52 https://www.runoob.com/python3/python3-os-statvfs.html
获取指定路径的文件系统统计信息
53 https://www.runoob.com/python3/python3-os-symlink.html
创建一个软链接
54 https://www.runoob.com/python3/python3-os-tcgetpgrp.html
返回与终端fd(一个由os.open()返回的打开的文件描述符)关联的进程组
55 https://www.runoob.com/python3/python3-os-tcsetpgrp.html
设置与终端fd(一个由os.open()返回的打开的文件描述符)关联的进程组为pg。
56 os.tempnam([dir[, prefix]])
Python3 中已删除。返回唯一的路径名用于创建临时文件。
57 os.tmpfile()
Python3 中已删除。返回一个打开的模式为(w+b)的文件对象 .这文件对象没有文件夹入口,没有文件描述符,将会自动删除。
58 os.tmpnam()
Python3 中已删除。为创建一个临时文件返回一个唯一的路径
59 https://www.runoob.com/python3/python3-os-ttyname.html
返回一个字符串,它表示与文件描述符fd 关联的终端设备。如果fd 没有与终端设备关联,则引发一个异常。
60 https://www.runoob.com/python3/python3-os-unlink.html
删除文件路径
61 https://www.runoob.com/python3/python3-os-utime.html
返回指定的path文件的访问和修改的时间。
62 https://www.runoob.com/python3/python3-os-walk.html
输出在文件夹中的文件名通过在树中游走,向上或者向下。
63 https://www.runoob.com/python3/python3-os-write.html
写入字符串到文件描述符 fd中. 返回实际写入的字符串长度
64 https://www.runoob.com/python3/python3-os-path.html
获取文件的属性信息。
65 https://www.runoob.com/python/os-write.html https://www.runoob.com/python3/python3-os-pardir.html
获取当前目录的父目录,以字符串形式显示目录名。
66 https://www.runoob.com/python3/python3-os-replace.html
重命名文件或目录。
67 https://www.runoob.com/python3/python3-os-startfile.html
类的专有方法:
__init__ : 构造函数,在生成对象时调用
__del__ : 析构函数,释放对象时使用
__repr__ : 打印,转换
__setitem__ : 按照索引赋值
__getitem__: 按照索引获取值
__len__: 获得长度
__cmp__: 比较运算
__call__: 函数调用
__add__: 加运算
__sub__: 减运算
__mul__: 乘运算
__truediv__: 除运算
__mod__: 求余运算
__pow__: 乘方
评论 (0)
发表评论