| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> 不可错过的 Python 的高阶玩法 -> 正文阅读 |
|
[Python知识库]不可错过的 Python 的高阶玩法 |
Python是世界上最流行的编程语言(TIOBE Index for April 2022),它易于上手且多才多艺,除了用于神经网络的构建外, 还能用来创建Web应用、桌面应用、游戏和运维脚本等多种多样的程序。 Python语言语法简洁,易于上手, 但当你深入研究时, 会发现Python有很多高级用法,这些高级用法可以大幅度提高代码的可读性和运行效率。 此外, Python包含了海量的高质量第三方库, 许多重要的库已经成为Python开发不可或缺的内容。 《高阶Python:代码精进之路》一书可以帮你掌握Python语言的高级特性,以及Python科学计算基石——numpy的使用方法(numpy的API设计非常优秀,深度学习框架TensorFlow、PyTorch都使用了numpy相似的API,并且可以和numpy混用)。 下面介绍几个Python的高级用法。 索引和切片Python列表的索引和切片是非常强大的功能, 它们可以让你在Python中获取列表中的任意元素。除了支持常见的正索引外, Python还支持负索引和切片。 正索引
负索引???????
切片 以下是列表切片的一些示例: ???????
字符串对齐字符串格式化在命令行工具开发中非常重要, str类包含基础的,用于文本对齐的方法:左对齐,右对齐或居中对齐。 ???????
下面是一些例子:???????
该例的输出为:
???????
此例的输出为:
上例只是一个简单的字符串格式化样例,《高阶Python:代码精进之路》一书中还介绍了许多更复杂的格式化方法。 列表推导式&字典推导式Python 2.0版本引入的最重要的功能之一就是列表推导式。它提供了一种从列表中生成一系列值的紧凑语法。它也可以应用于字典,集合(set)和其他类型的集合。 假设你要创建一个包含a_list中每个元素的平方的新列表,一种可能的实现方式如下: ???????
如果a_list包含元素[1,2,3],则这些语句的结果是创建一个包含[1,4,9]的新列表,并将此列表分配给变量b_list。在这种情况下,相应的列表推导式如下所示:
假设想讲一个元组列表转换为字典,元组列表如下:
字典可以用下面的代码生成:
注意在键值表达式(i[0]:i[1])中冒号(:)的使用。 可变长参数列表Python最通用的功能之一就是能够访问可变长度参数的列表。借助此功能,你的函数可以处理任意数量的参数,就像内置的print函数一样。可变长参数的特性也可以扩展到命名参数。 ???????
这里的中括号表示*args前面可以有任意数量的普通参数,在此表示为ordinary_args。此类参数是可选的。下面是示例代码: ???????
此函数my_var_func可接受任意长度的参数列表。???????
可变长参数列表还支持关键字参数,如下所示:???????
上面的函数遍历了kwargs表示的字典参数,打印出传入参数的键(对应于参数名称)和对应的值。???????
args 和 kwargs可以组合使用,下面是一个例子。???????
运行时,此程序将打印以下内容: ???????
使用numpy进行线性代数运算线性代数运算在深度学习中非常重要,numpy库为Python提供了高效的线性代数运算模块。 numpy的线性代数模块非常完备,以计算点积为例进行介绍。 使用numpy时,可以使用点积函数dot计算点积。
A和B是要进行点积运算的两个数组;out参数(如果已指定)是用于存储结果的正确形状的数组,“正确形状”取决于A和B的形状。 两个一维数组的点积很简单。数组的长度必须相同。点积计算是将A中的每个元素与其B中的对应元素相乘,然后对这些乘积求和,得出一个标量值。
二维矩阵之间的点积比较复杂。与数组之间的普通乘法一样,两个数组的形状必须兼容,但这只需要在其中一个维度上相等即可。
思考下面的2×3数组,再结合一个3×2数组,其点积是2×2数组。???????
以上内容节选自《高阶Python:代码精进之路》一书,欢迎阅读本书学习更多Python的高级技巧。 ▊《高阶Python:代码精进之路》 [美]?Brian,Overland(布赖恩?欧弗兰),John,Bennett(约翰?班纳特) 著 李辉?译
本书详细地介绍了Python语言的一些高级功能以及常见数据类型的高级用法,非常适合有一定基础的读者深入学习Python编程。本书的主要内容包括常见内置类型(数值、字符串和集合等)的高级用法和潜在的陷阱,用于文本处理的格式化方法和正则表达式,用于数值计算和大规模数据处理的math包和numpy包等。此外,文件存储、随机数生成和图表绘制也是本书的重要内容。 python学习如果你想学习Python,但是找不到学习路径和资源 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 15:01:13- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |