python中文官方文档记录
随笔记录 
python3.10中文官方文档百度网盘链接:https://pan.baidu.com/s/18XBjPzQTrZa5MLeFkT2whw?pwd=1013
提取码:1013
1、python解释器
启动解释器的另一种方式,建议用单引号标注整个 command。python -c command [arg] ...
Python 模块也可以当作脚本使用。输入: python -m module [arg] ... ,会执行 module 的源文件,这跟在命令行把路径写全了一样。
解释器读取命令行参数,把脚本名与其他参数转化为字符串列表存到sys.argv,import sys
除法运算:( / )返回浮点数,// 运算返回整数.
交互模式下,上次输出的表达式会赋给变量 _
2、python速览
内置支持 复数,后缀 j 或 J 用于表示虚数(例如 3+5j )。
print() 函数输出的内容更简洁易读,它会省略两边的引号,并输出转义后的特殊字符。
使用 原始字符串,在引号前添加 r 即可:print(r'C:\some\name')
字符串字面值可以实现跨行连续输入。实现方式是用三引号: """...""" 或 '''...''' ,字符串行尾会自动加上回车换行,如果不需要回车换行,在行尾添加 \ 即可.
相邻的两个或多个 字符串字面值 (引号标注的字符)会自动合并.
索引越界会报错, 但是,切片会自动处理越界索引.
Python 字符串不能修改,是 immutable 的。因此,为字符串中某个索引位置赋值会报错.
列表
遍历某个集合的同时修改该集合的内容,很难获取想要的结果。要在遍历时修改集合的内容,应该遍历该集合的副本或创建新的集合:for user, status in users.copy().items():
range右边界取不到,sum(range(4))返回6。
else 子句可以属于 for 循环,不属于 if 语句
match 语句接受一个表达式并将它的值与以一个或多个 case 语句块形式给出的一系列模式进行比较。
1. def http_error(status): #如果status传404,返回Not found
2. match status:
3. case 400:
4. return "Bad request"
5. case 404:
6. return "Not found"
7. case 401 | 403 | 404:
8. return "I'm a teapot"
9. case _: #通配符,一定会匹配成功
10. return "Something's wrong with the internet"
“|” 和”or ”都表示或者,&表示且。
3、其他流程控制工具
没有 return 语句的函数也返回值,只不过这个值比较是 None (是一个内置名称)。
return 语句不带表达式参数时,返回 None。
列表append()相当于result = result + [a]
函数
默认值只计算一次
1. def f(a, L=[]):
2. L.append(a)
3. return L
4.
5. print(f(1))#[1]
6. print(f(2))#[1, 2]
7. print(f(3))#[1, 2, 3]
*name 形参接收一个 元组,**name 形式时,接收一个字典,def cheeseshop(kind, *arguments, **keywords):
def f(pos1, pos2, /, pos_or_kwd, *, kwd1, kwd2):仅限位置形参应放在 / (正斜杠)前,/ 后可以是 位置或关键字 或 仅限关键字 形参。应在参数列表中第一个 仅限关键字 形参前添加。使用仅限位置形参,可以让用户无法使用形参名。
1. >>> def pos_only_arg(arg, /):
2. ... print(arg)
3. ...
4. >>> def kwd_only_arg(*, arg):
5. ... print(arg) 1. >>> pos_only_arg(1)
2. 1
3. >>> pos_only_arg(arg=1) #报错
4. >>> kwd_only_arg(3)#报错
5. >>> kwd_only_arg(arg=3)
6. 3
字典可以用 ** 操作符传递关键字参数
1. >>> def parrot(voltage, state='a stiff', action='voom'):
2. ... print("-- This parrot wouldn't", action, end=' ')
3. ... print("if you put", voltage, "volts through it.", end=' ')
4. ... print("E's", state, "!")
5. ...
6. >>> d = {"voltage": "four million", "state": "bleedin' demised", "action": "VOOM"}
7. >>> parrot(**d)
8. -- This parrot wouldn't VOOM if you put four million volts through it. E's bleedin' demised !
lambda小巧灵活
1. >>> def make_incrementor(n):
2. ... return lambda x: x + n
3. ...
4. >>> f = make_incrementor(42)
7. >>> f(1)
8. 43
1. >>> pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
2. >>> pairs.sort(key=lambda pair: pair[1]#排序
4、数据结构
list.extend (iterable) 用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表).
pop()、append() 类似栈,后进先出
实现队列(先进先出)最好用 collections.deque ,可以快速从两端添加或删除元素。
queue.append后入,queue.popleft()前出,删除最左边元素
map接收一个函数f和一个list,并通过把函数f依次作用在list的每个元素上,得到一个新的list并返回。
list(map(lambda x: x**2, range(10)))等价于[x**2 for x in range(10)],
#连续使用for循环
1. >>> [(x, y) for x in [1,2,3] for y in [3,1,4] if x != y]
2. [(1, 3), (1, 4), (2, 3), (2, 1), (2, 4), (3, 1), (3, 4)]
3. >>> vec = [[1,2,3], [4,5,6], [7,8,9]]
4. >>> [num for elem in vec for num in elem]
5. [1, 2, 3, 4, 5, 6, 7, 8, 9]
t = 12345, 54321, 'hello!' 等价于12345, 54321, 'hello!' = t 默认t为一个元组,输入元组时,圆括号可有可无
u = t, (1, 2, 3, 4, 5)
((12345, 54321, 'hello!'), (1, 2, 3, 4, 5))
只有一个元素的元组可以通过在这个元素后添加逗号来构建
集合是由不重复元素组成的无序容器.
set('abracadabra') 返回 {'a', 'r', 'b', 'c', 'd'}
对字典执行 list(dic) 操作,返回该字典中所有键的列表,sorted(dic)字典可以按键 排序
dict() 构造函数可以直接用键值对序列创建字典:
1. >>> dict([('sape', 4139), ('guido', 4127), ('jack', 4098)])
2. {'sape': 4139, 'guido': 4127, 'jack': 4098}
3. >>> dict(sape=4139, guido=4127, jack=4098)
4. {'sape': 4139, 'guido': 4127, 'jack': 4098}
enumerate() 函数可以同时取出位置索引和对应的值
同时循环两个或多个序列时,用 zip() 函数可以将其内的元素一一匹配:
1. >>> questions = ['name', 'quest', 'favorite color']
2. >>> answers = ['lancelot', 'the holy grail', 'blue']
3. >>> for q, a in zip(questions, answers):
4. ... print('What is your {0}? It is {1}.'.format(q, a))
5. ...
6. What is your name? It is lancelot.
7. What is your quest? It is the holy grail.
8. What is your favorite color? It is blue.
for i in reversed(range(1, 10):倒叙显示
5、输入与输出
f'Results of the {year} {event}'
str.format()
把值转化为字符串,str() 函数返回供人阅读的值, repr() 则生成适于解释器读取的值,多一个‘’,s='hello moto',repr(s)="'hello moto'"
str.rjust() 方法通过在左侧填充空格,同类方法还有str.ljust() 和 str.center()
>>>str = 'runoob'
>>> str.center(20, '*')
'*******runoob*******'
>>> str.center(20)
' runoob '
str.zfill() ,该方法在数字字符串左边填充零
json.load:表示读取文件,返回python对象
json.dump:表示写入文件,文件为json字符串格式,无返回
json.dumps:将python中的字典类型转换为字符串类型,返回json字符串 [dict→str]
json.loads:将json字符串转换为字典类型,返回python对象 [str→dict]
load和dump处理的主要是 文件
loads和dumps处理的是 字符串
6、类
如果同样的属性名称同时出现在实例和类中,则属性查找会优先选择实例:
7、标准库简介
删除文件:os.remove() ; 删除一个空目录:os.rmdir()
shutil.copyfile('data.db', 'archive.db')复制出一个新文件; shutil.rmtree(directory_path)
,删除文件
shutil.move('/build/executables', 'installdir') 重命名文件
glob 模块提供了一个在目录中使用通配符搜索创建文件列表的函数
1. >>> import glob
2. >>> glob.glob('*.py')
3. ['primes.py', 'random.py', 'quote.py']
终止脚本的最直接方法是使用 sys.exit()
忍辱负重型的人永远难以获得幸福
python中文官方文档记录的更多相关文章
- springboot中文官方文档
springboot中文官方文档 https://www.breakyizhan.com/springboot/3028.html spring框架 https://www.breakyizhan.c ...
- Beautiful Soup4.4.0中文官方文档!最权威的参考---中文官方文档
最好用的解析库Beautiful Soup 解析库-----中文官方文档 https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/
- js模拟浏览器加载效果 pace.js 中文官方文档
2017年2月20日12:11:25 官网URL:http://github.hubspot.com/pace/docs/welcome/ 文档 http://github.hubspot.com/p ...
- IntelliJ IDEA 中文官方文档
目录 认识IntelliJ IDEA IntelliJ IDEA 安装和设置 IntelliJ IDEA如何使用 IntelliJ IDEA中不容错过的快捷键 IntelliJ IDEA专业的使用技巧 ...
- Kafka中文官方文档
参见链接:http://orchome.com/kafka/index
- Python中定义文档字符串__doc__需要注意格式对齐的处理
Python中的文档字符串是个很不错的提升代码交付质量.编写文档方便的特征,但是需要注意在使用文档字符串时,将文档字符串标识的引号对必须遵守缩进的规则,否则Python语法检查时会无法通过,而引号内的 ...
- jira与wiki官方文档记录
jira:https://confluence.atlassian.com/display/JIRA/Home wiki:https://confluence.atlassian.com/doc/co ...
- Python中的文档字符串作用
文档字符串是使用一对三个单引号 ''' 或者一对三个双引号 """来包围且没有赋值给变量的一段文字说明(如果是单行且本身不含引号,也可以是单引号和双引号), 它在代码执行 ...
- Python中docstring文档的写法
该写法根据Python的PEP 257文档总结. 类的函数称为方法(method),模块里的函数称为函数(function) 每一个包,模块,类,函数,方法都应该包含文档,包括类的__init__方法 ...
随机推荐
- Android——RelativeLayout
代码:<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android= ...
- uniapp设置竖屏
//在APP.vue中的onLaunch钩子写入plus.screen.lockOrientation('portrait-primary');
- 什么!Sentinel流控规则可以这样玩?
项目源码地址:公众号回复 sentinel,即可免费获取源码 前言 上一篇文章中,我们讲解了关于sentinel基本介绍以及流控规则中直接和快速失败的效果,有兴趣的可以去看上一篇文章,今天,我们给大家 ...
- 分布式任务调度ScheduleMaster
1.什么是ScheduleMaster ScheduleMaster是分布式任务调度系统.简称:集中任务调度系统,最简单的理解ScheduleMaster,就是对不同的系统里面的调度任务做统一管理的框 ...
- “摆地摊“都找不到全栈工程师?JNPF帮你分分钟搞定!
大街上捕捉野生程序员 都这样了还找不到全栈工程师 全栈工程师(Full-Stack Engineer)图鉴: 全栈工程师,也叫全端工程师(同时具备前端和后台能力),英文Full Stack deve ...
- Xmind演讲主题大纲
参考:https://www.bilibili.com/video/BV1Rb411s7VG?p=9
- Number.prototype.toString()方法
Number.prototype.toString(radix)方法返回指定基数对应Number的字符串值 radix可选参数,值范围为2~36,转化基数,如果未指定,默认值为10,如果radix值不 ...
- LayUI+SSM实现一个简单的后台管理系统
该后台管理系统是用于管理视频网站数据的,目前分5个菜单项,这篇博客主要讲述[影片管理]的具体功能和实现 后台代码结构和[影片管理]的界面如下图 该界面分为上下2部分,[搜索条件]和[影片列表],2部分 ...
- <%= %> <%- %> <% %>是什么意思?
.ejs文件后缀的数据渲染,这是服务器端的.把 .html改成 .ejs, (1)<%= %>相当于html中的innerTEXT,导出不包含标签 . (2)<%- %>相当于 ...
- Ansible Playbook概览
Ansible playbook 执行需要三步路执行: 1.编写playbook 2.定义主机清单文件 3.设置运行环境,写入配置文件 1.编写playbook Playbook使用YAML语法格式进 ...