《Python基础教程》附录B笔记:Python参考手册

news2025/3/12 18:35:00

《Python基础教程》第1章笔记👉https://blog.csdn.net/holeer/article/details/143052930

附录B Python参考手册

Python标准文档是完整的参考手册。本附录只是一个便利的速查表,当你开始使用Python进行编程后,它可帮助你唤醒记忆。

B.1 表达式

本节总结Python表达式。表B-1列出了Python中最重要的基本值(字面量)。表B-2列出了Python运算符及其优先级(先执行优先级高的运算符,后执行优先级低的运算符)。表B-3描述了一些最重要的内置函数。表B-4~表B-6分别描述了列表的方法、字典的方法和字符串的方法。

表B-1 基本值(字面量)

类型描述语法示例
整数没有小数部分的数字42
浮点数有小数部分的数字42.5、42.5e-2
复数实数(整数或浮点数)和虚数的和38 + 4j、42j
字符串不可修改的字符序列‘foo’、“bar”、“”“baz”“”、r’\n

表B-2 运算符(摘录)

运算符描述优先级
lambdalambda表达式1
… if …else条件表达式2
or逻辑或3
and逻辑与4
not逻辑非5
in成员资格检查6
not in非成员资格检查6
Is相同性测试6
is not不相同测试6
<小于6
>大于6
<=小于或等于6
>=大于或等于6
==等于6
!=不等于6
+11
-11
*12
@矩阵乘法12
/12
//整数除法12
%求余12
**14
x.attribute属性引用15
x[index]元素访问15
x[index1:index2[:index3]]切片15
f(args…)函数调用15
(…)将表达式用括号括起或元组视图16
[…]列表视图16
{key:value, …}字典视图16

表B-3 一些重要的内置函数(摘录)

函数描述
all(iterable)如果iterable的所有元素都为真值,就返回True;否则返回False
any(iterable)如果iterable的所有元素都为假值,就返回False;否则返回True
bool(x)将x解读为布尔值,并返回True或False
callable(object)检查对象是否是可调用的
chr(number)返回一个字符,其Unicode码点为指定的数字
delattr(object,name)删除指定对象的指定属性
dir([object] )列出当前可见作用域中的(大部分)命令,或列出指定对象的(大部分)属性
divmod(a, b)返回(a // b, a % b)
filter(function,sequence)返回一个列表,其中包含指定序列中这样的元素,即对其应用指定的函数时,结果为真值
frozenset([iterable])创建一个不可修改的集合,这意味着可将其添加到其他集合中
hasattr(object,name)检查指定对象是否包含指定的属性
help([object])调用内置的帮助系统,或打印有关指定对象的帮助信息
id(object)返回指定对象的独一无二的ID
len(object)返回指定对象的长度(包含的项数)
map(function,sequence, …)创建一个列表,其中包含对指定序列包含的项执行指定函数返回的值
ord(char)返回指定字符的Unicode码点
range([start,]stop[, step])根据参数start(包含,默认为0)、stop(不包含)和step(默认为1)以序列的方式返回指定范围内的一系列值
reversed(sequence)返回一个反向迭代序列的迭代器
round(float[, n])将指定的浮点数圆整到小数点后n位(默认为零位)
str(object)返回指定对象的格式良好的字符串表示
super([type[,obj/type]])返回一个将方法调用委托给超类的代理
type(object)返回指定对象的类型

表B-4 列表的方法(摘录)

方法描述
aList.append(obj)将obj追加到aList末尾
aList.clear()删除aList的所有元素
aList.count(obj)返回aList中与obj相等的元素个数
aList.extend(sequence)将sequence追加到aList末尾
aList.index(obj)返回aList中第一个与obj相等的元素的索引
aList.insert(index, obj)将指obj加入到index指定的位置
aList.pop()返回第一个元素并删除
aList.remove(obj)等同于del aList[aList.index(obj)]
aList.reverse()就地按相反的顺序排列列表的元素

表B-5 字典的方法(摘录)

方法描述
aDict.clear()删除aDict的所有项
dict.fromkeys(seq[,val])返回一个字典,其中的键来自seq,而值都被设置为val(默认为None)。
aDict.get(key[,default])如果aDict``[key]存在,就返回它;否则返回指定的默认值(默认为None)
aDict.keys()返回一个迭代器(视图),其中包含aDict中所有的键
aDict.pop(key[, d])删除并返回对应于给定键的值,或给定默认值d
aDict.popitem()在aDict中随机删除一项,并将其以(key, value)对的方式返回
aDict.update(other)用字典other更新aDict

表B-6 字符串的方法(摘录)

方法描述
string.count(sub[, start[,end]])计算子串sub出现的次数
string.endswith(suffix[,start[,end]])检查字符串是否以suffix结尾
string.find(sub[, start[,end]])返回找到的第一个子串sub的索引
string.index(sub[, start[,end]])返回找到的第一个子串sub的索引
string.isalpha()检查字符串中的字符是否都是字母
string.isdigit()检查字符串中的字符是否都是数字
string.partition(sep)在字符串中搜索sep,并返回(sep前面的部分, sep, sep后面的部分)
string.replace(old,new)将字符串中的子串old替换为new,并返回结果
string.rfind(sub[,start[,end]])返回找到的最后一个子串的索引,如果没有找到这样的子串,就返回-1
string.split([sep[,maxsplit]])返回一个列表,其中包含以sep为分隔符对字符串进行划分得到的结果string.startswith(prefix[,start[,end]])
string.strip([chars])将字符串开头和结尾的所有空白字符都删除,并返回结果

B.2 语句

本节总结各种类型的Python语句。

B.2.1 简单语句

简单语句只包含一个逻辑行。

#(1)表达式语句:表达式本身可以为语句。
"This module contains SPAM-related functions."
#(2)断言语句:检查条件是否满足,如果不满足,就引发AssertionError异常(并可提供错误消息)。
assert age >= 12, 'Children under the age of 12 are not allowed'
#(3)赋值语句:将变量与值关联起来。可通过序列解包同时给多个变量赋值,还可进行链式赋值。
x = 42                     # 简单赋值
name, age = 'Gumby', 60    # 序列解包
x = y = z = 10             # 链式赋值
#(4)增强赋值语句:可使用运算符来增强赋值。在这种情况下,将对变量的当前值和指定的值执行运算符指定的运算,并将变量重新关联到结果。
x *= 2     #将x的值翻倍
x += 5     #将x的值加5
#(5)pass语句:不执行任何操作,可用作占位符。在语法要求的代码块中,如果你不想执行任何操作,可让它只包含pass语句。
try: x.name
except AttributeError: pass
else: print('Hello', x.name)
#(6)del语句:用于将数据结构(映射或序列)的一部分删除。
del seq[42]      # 删除序列中的一个元素
del seq[42:]     # 删除序列中的一个切片
#(7)return语句:结束函数的执行并返回一个值。如果没有指定值,将返回None。
return              # 从当前函数返回None
return 42           # 从当前函数返回42
return 1, 2, 3      # 从当前函数返回(1, 2, 3)
#(8)yield语句:暂停执行生成器,并返回一个值。生成器是一种迭代器,可用于for循环中。
yield 42            # 从当前函数返回42
#(9)raise语句:引发异常。调用它时可不提供任何参数(在except子句中用于重新引发当前捕获的异常)。
raise # 只可用于except子句中
raise IndexError
raise IndexError('index out of bounds')
#(10)break语句:结束它所属的循环语句(for或while语句),并接着执行该循环语句后面的语句。
while True:
    line = file.readline()
    if not line: break
    print(line)
#(11)continue语句:结束所属循环的当前迭代,即跳到下一次迭代开头继续执行。
while True:
    line = file.readline()
    if not line: break
    if line.isspace(): continue
    print(line)
#(12)import语句:用于从外部模块导入名称(与函数、类或其他值相关联的变量)。此外,from __future__ import语句用于导入在未来的Python版本中将包含在标准中的功能。
import math
from math import sqrt
from math import sqrt as squareroot
from math import *
#(13)global语句:用于将变量标记为全局的。在函数中,可使用它给全局变量重新赋值。应尽量避免使用它。
count = 1
def inc():
    global count
    count += 1

B.2.2 复合语句

复合语句包含一组其他的语句(代码块)。

#(1)if语句:用于有条件地执行,可包含elif和else子句。
if x < 10:
    print('Less than ten')
elif 10 <= x < 20:
    print('Less than twenty')
else:    print('Twenty or more')
#(2)while语句:用于在指定条件为真时反复地执行(循环)。可包含else子句,这种子句将在循环正常结束时执行。
x = 1
while x < 100:
    x *= 2
print(x)
#(3)for语句:用于对序列的元素或其他可迭代对象(包含返回迭代器的方法__iter__的对象)反复地执行(循环),可包含else子句。
for i in range(10, 0, -1):
    print(i)
    print('Ignition!')
#(4)try语句:用于执行可能发生异常的代码段,让程序能够捕获这些异常并执行异常处理代码。可包含多个except子句(用于处理异常)和finally子句(这种子句不管情况如何都将执行,可用于执行清理工作)。
try:  
    1 / 0
except ZeroDivisionError:    
    print("Can't divide anything by zero.")
finally:    
    print("Done trying to calculate 1 / 0")

(5)with语句:用于包装使用上下文管理器的代码块,让管理器能够执行一些设置和清理操作。比如,可将文件用作上下文管理器,这样它们将在执行清理工作时关闭自己。

with open("somefile.txt") as myfile:
    dosomething(myfile)
# 到这里时文件已关闭

(6)函数定义:用于创建函数对象以及将全局或局部变量与函数对象关联起来。

def double(x):
    return x * 2

(7)类定义:用于创建类对象以及将全局或局部变量与类对象关联起来。

class Doubler:
    def __init__ (self, value):
        self.value = value
    def double(self):
        self.value *= 2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2313887.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

wireshark 如何关闭混杂模式 wireshark操作

Fiddler和Wireshark都是进行抓包的工具&#xff1a;所谓抓包就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作&#xff0c;也用来检查网络安全。抓包也经常被用来进行数据截取等。黑客常常会用抓包软件获取你非加密的上网数据&#xff0c;然后通过分析&#…

ChatGPT4.5详细介绍和API调用详细教程

OpenAI在2月27日发布GPT-4.5的研究预览版——这是迄今为止OpenAI最强大、最出色的聊天模型。GPT-4.5在扩大预训练和微调规模方面迈出了重要的一步。通过扩大无监督学习的规模&#xff0c;GPT-4.5提升了识别内容中的模式、建立内容关联和生成对于内容的见解的能力&#xff0c;但…

Unity DOTS从入门到精通之 自定义Authoring类

文章目录 前言安装 DOTS 包什么是Authoring1. 实体组件2. Authoring类 前言 DOTS&#xff08;面向数据的技术堆栈&#xff09;是一套由 Unity 提供支持的技术&#xff0c;用于提供高性能游戏开发解决方案&#xff0c;特别适合需要处理大量数据的游戏&#xff0c;例如大型开放世…

一键换肤的Qt-Advanced-Stylesheets

项目简介 能在软件运行时对 CSS 样式表主题&#xff08;包括 SVG 资源和 SVG 图标&#xff09;进行实时颜色切换的Qt项目。 项目预览&#xff1a; 项目地址 地址&#xff1a;Qt-Advanced-Stylesheets 本地编译环境 Win11 家庭中文版 Qt5.15.2 (MSVC2019) Qt Creator1…

golang 静态库 Undefined symbol: __mingw_vfprintf

正常用golang编译一个静态库给 其他语言 调用&#xff0c;编译时报错 Error: Undefined symbol: __mingw_vfprintf 很是奇怪&#xff0c;之前用用golang写静态库成功过&#xff0c;编译也没问题&#xff0c;结果却是截然不同。 试了很多次&#xff0c;发现唯一的差别就是在 …

Linux 网络:skb 数据管理

文章目录 1. 前言2. skb 数据管理2.1 初始化2.2 数据的插入2.2.1 在头部插入数据2.2.2 在尾部插入数据 2.2 数据的移除 3. 小结 1. 前言 限于作者能力水平&#xff0c;本文可能存在谬误&#xff0c;因此而给读者带来的损失&#xff0c;作者不做任何承诺。 2. skb 数据管理 数…

wireguard搭配udp2raw部署内网

前言 上一篇写了使用 wireguard 可以非常轻松的进行组网部署&#xff0c;但是如果服务器厂商屏蔽了 udp 端口&#xff0c;那就没法了 针对 udp 被服务器厂商屏蔽的情况&#xff0c;需要使用一款 udp2raw 或 socat 类似的工具&#xff0c;来将 udp 打包成 tcp 进行通信 这里以…

Qwen/QwQ-32B 基础模型上构建agent实现ppt自动生成

关心Qwen/QwQ-32B 性能测试结果可以参考下 https://zhuanlan.zhihu.com/p/28600079208https://zhuanlan.zhihu.com/p/28600079208 官方宣传上是该模型性能比肩满血版 DeepSeek-R1&#xff08;671B&#xff09;&#xff01; 我们实现一个 使用Qwen/QwQ-32B 自动生成 PowerPoi…

PostgreSQL17(最新版)安装部署

PostgreSQL 17已与2024年9月26日正式发布&#xff01;&#xff01;&#xff01; 一、Postgres概述 官网地址&#xff1a;PostgreSQL: The world’s most advanced open source database Postgres作为最先进的开源数据库&#xff08; the latest version of the world’s most…

【AI大模型智能应用】Deepseek生成测试用例

在软件开发过程中&#xff0c;测试用例的设计和编写是确保软件质量的关键。 然而&#xff0c;软件系统的复杂性不断增加&#xff0c;手动编写测试用例的工作量变得异常庞大&#xff0c;且容易出错。 DeepSeek基于人工智能和机器学习&#xff0c;它能够依据软件的需求和设计文…

【高级篇】大疆Pocket 3加ENC编码器实现无线RTMP转HDMI进导播台

【高级篇】大疆Pocket 3加ENC编码器实现无线RTMP转HDMI进导播台 文章目录 准备工作连接设备RTMP概念ENCSHV2推流地址设置大疆Pocket 3直播设置总结 老铁们好&#xff01; 很久没写软文了&#xff0c;今天给大家带了一个干货&#xff0c;如上图&#xff0c;大疆Pocket 3加ENC编…

机器人交互系统 部署构建

环境要求 Ubuntu 20.04 或更高版本ROS Noetic 或兼容版本Python 3.8 安装步骤 1. 安装ROS环境&#xff08;如未安装&#xff09; sudo apt update sudo apt install ros-noetic-desktop-full source /opt/ros/noetic/setup.bash2. 创建工作空间并克隆代码 mkdir -p ~/code…

创建模式-工厂方法模式(Factory Method Pattern)

江城子乙卯正月二十日夜记梦 目的动机简单工厂示例代码 目的 定义一个创建对象的接口&#xff0c;该接口的子类具体负责创建具体的对象。工厂方法模式将对象的实例化延迟到子类。简单工厂是直接在创建方法中负责所有的产品的生成&#xff0c;造成该方法臃肿&#xff0c;并且当…

【eNSP实战】交换机配置端口隔离

交换机端口隔离可以实现在同一个VLAN内对端口进行逻辑隔离&#xff0c;端口隔离分为L2层隔离和L3层隔离&#xff0c;这里只进行L2层隔离演示。 拓扑图 路由器AR1配置GE 0/0/1配置IP&#xff0c;其余PC主机各自配置IP和网关。 现将PC1到PC4四个主机全部进行L2层隔离&#xff0c…

人脸识别之数据集中 PI20 和 CFMT 之间关联的模型预测贝叶斯(Python+论文代码实现)

代码文件&#xff08;联系作者点击这里末尾&#xff09; 代码文件描述如下&#xff1a; subjective_objective.ipynb和&#xff1a;这分别是实际的笔记本和 Web 浏览器友好的只读版本。此笔记本读取数据&#xff0c;执行一些预处理&#xff0c;并包含论文中使用的模型规范。它…

静态时序分析:无法满足的生成时钟(TIM-255警告、UITE-461或PTE-075错误)

相关阅读 静态时序分析https://blog.csdn.net/weixin_45791458/category_12567571.html?spm1001.2014.3001.5482 在阅读本文前&#xff0c;强烈建议首先阅读介绍生成时钟的文章&#xff0c;尤其是其中关于时钟极性和反相的相关内容。 静态时序分析&#xff1a;SDC约束命令cr…

VSTO(C#)Excel开发2:Excel对象模型和基本操作

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github&#xff1a;codetoys&#xff0c;所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的&#xff0c;可以在任何平台上使用。 源码指引&#xff1a;github源…

途游游戏25届AI算法岗内推

熟悉常用的编程语言&#xff0c;如Python、R等&#xff0c;具有良好的编码和调试能力&#xff1b;对常用的机器学习算法和深度学习框架&#xff08;如TensorFlow、PyTorch等&#xff09;有深入理解&#xff0c;对大型语言模型有一定了解&#xff0c;具备模型部署和微调的实践经…

【数据分析大屏】基于Django+Vue汽车销售数据分析可视化大屏(完整系统源码+数据库+开发笔记+详细部署教程+虚拟机分布式启动教程)✅

目录 一、项目背景 二、项目创新点 三、项目功能 四、开发技术介绍 五、项目功能展示 六、权威视频链接 一、项目背景 汽车行业数字化转型加速&#xff0c;销售数据多维分析需求激增。本项目针对传统报表系统交互性弱、实时性差等痛点&#xff0c;基于DjangoVue架构构建…

OpenCV应用:三种图像风格化案例

OpenCV 本身主要用于计算机视觉任务&#xff0c;例如图像处理、边缘检测、物体识别等&#xff0c;虽然它并不直接提供像 Photoshop 或其他艺术设计软件那样的 "风格化" 功能&#xff0c;但你可以通过一些图像处理技术在 OpenCV 中实现不同风格化效果。 1. 卡通化效果…