正如主题所说,我们将研究Python提供的一些很酷的功能。
Python有很多功能(或者说技巧),这使得该语言与其他语言(例如
1.Python之禅
import this |
如果在终端上键入此命令,您将获得“Tim Peters的Python禅宗”,这将帮助您提高Python代码的可读性、可用性和可维护性。
查看此视频了解更多详细信息
3.在一行中交换两个变量
Python提供了一个很酷的功能,可以使用tuple unpacking在一行中交换两个变量,这将使代码更短、更易于阅读
a = 10 b = 20 print (f "Before swapping value of a = {a} and b = {b}" ) a, b = b, a print (f "After swapping value of a = {a} and b = {b}" ) |
如果你想深入了解这个元组解包,我建议你看看trey hunner的博客
4.使用一行代码创建web服务器
python - m http.server 8000 |
要创建简单的文件共享应用程序,请转到要共享的文件夹并键入上述命令,然后转到浏览器并键入
127.0.0.1:8000
要在浏览器中打开该文件夹,如果您在同一网络中,也可以从其他设备使用该文件夹。
这里有一个链接来了解更多信息
5.一处所有数据结构:集合
from collections import Counter myList = [ 1 , 1 , 2 , 3 , 4 , 5 , 3 , 2 , 3 , 4 , 2 , 1 , 2 , 3 ] print (Counter(myList)) |
这个模块有数据结构,可以帮助你在不编写太多代码的情况下解决各种实际问题。 收藏
6.python之宝:Itertools
Itertools是Python 3中最重要的标准库之一,它内置了很多功能。Itertools提供了创建快速、高效、美观代码的功能。
你会在Itertools模块中发现很多有用的函数,让我们来看看其中一个流行的函数
import itertools itertools.permutations( 'ab' ) |
要了解有关Itertools的更多信息,请查看此链接
7.循环索引:枚举
这是一个很酷的特性,它提供索引而不必为索引定义任何计数器
mylist = [ 1 , 13 , 16 , 15 , 80 ] for i, value in enumerate (mylist): print ( i, ': ' , value) |
8.颠倒清单
在任何编程语言中,反转都是一项乏味的任务,但是Python内置的reversed()函数允许您在一行中创建列表的反转
lst = [ 1 , 2 , 3 , 4 , 5 ] list ( reversed (lst)) |
有关更多详细信息,请查看此链接
9.使用Zip添加两个列表
假设你有两个列表,你想添加列表中的元素,那么python有一个Zip函数,这个函数很方便,可以在不使用嵌套循环的情况下给出结果
a = [ 1 , 2 , 3 ] b = [ 4 , 5 , 6 ] for i, j in zip (a, b): print ( "Sum of a and b is" , i + j) |
Zip运算在数据科学中很流行,因为矩阵乘法可以使用Zip进行行和列乘法。
10.列表/集合/听写理解
理解提供了在一行中定义任何复杂代码的最简单方法
假设你想把偶数从1到20平方
如果使用普通的If-else,那么代码如下
square_list = [] for number in range ( 1 , 20 ): if number % 2 = = 0 : square_list.append(number * number) print (square_list) |
如果使用列表理解,只需键入较少的代码
square_list = [number * number for number in range ( 1 , 20 ) if number % 2 = = 0 ] print (square_list) |
同样,字典理解和集合理解也可以使用
my_dict = {i: i * i for i in range ( 10 )} my_set = {i * 10 for i in range ( 10 )} print (my_dict) print (my_set) |
11.现代词典
Python dictionary功能强大,如果深入了解Python,那么一切都围绕对象和字典展开。
如果你想了解更多关于这本词典的信息,那么看看这段视频,你会学到这本词典的很多重要功能
12.漂亮的印花
这是最简单的打印列表和字典的方法
import pprint pp = pprint.PrettyPrinter(indent = 4 ) pp.pprint(my_dict) |
这在使用大型词典时很方便,或者如果使用JSON文件,则可以使用pprint打印JSON文件。
13.使用交互式“u”运算符。
2 + 2 print (_) |
“u”引用最后执行的表达式的输出。
在此基础上,Python还提供了许多外部库,它们比任何编程语言都具有更好的特性,下面我将列举一些顶级库
努比 熊猫 Scikit学习 痒痒的 靓汤 OpenCV 请求 Matplotlib 皮加梅 炼金术 松软的 巨蟒扭曲
在经历了所有的酷特性之后,你的感觉就像
这就是我这边关于Python的所有内容,如果您有任何疑问或想添加一些内容,请在下面进行评论。
如果你喜欢我的文章,你可以继续关注我
库拉: https://www.quora.com/profile/Shankar-Jha-20 中等: https://medium.com/@shankarj67 推特: https://twitter.com/Skhk634