查看原文
其他

Python中最常用的10个内置函数

快快 快学Python 2023-05-04

人生苦短,快学Python!

之前我们曾经在公众号中分享过Python中堪称神仙的6个内置函数,它们在很多计算机书籍中通常作为高阶函数来介绍。而今天我想介绍的是一些开箱即用的常见内置函数,它们更应该被熟练掌握和使用。

help()

第一个常用的内置函数其实是help()函数,它可以帮助我们查看函数或模块用途的详细说明。

如果平时使用Jupyter Notebook运行Python代码,也可以使用Shift+Tab的快捷键组合查看函数的简单说明。若需要查看函数的详细说明可以在函数后面加上英文问号“?”后点击运行,与help()函数效果一致。

range()

range()函数返回一个可迭代对象,通常与list()函数或者for循环语句搭配使用。其语法格式如下图所示:

用几个例子帮大家理解,在交互式环境中输入如下命令:

list(range(10))

输出:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

在交互式环境中输入如下命令:

list(range(0102))

输出:

[0, 2, 4, 6, 8]

sorted()

sorted()函数对所有可迭代的对象进行排序操作。在交互式环境中输入如下命令:

sorted([24086])

sorted((24086))

sorted({2'bb'4'cc'0'aa'8'ee'6'dd'})

输出结果:

sorted()函数和sort()函数是有一定区别的:

sortt()是应用在列表list上的方法,而sorted可以对所有可迭代的对象进行排序操作。

列表list的sort()方法返回的是对已经存在的列表进行操作,而内置函数sorted()返回的是一个新的list,而不是在原来的基础上进行的操作。

eval()

在Python中,eval()函数用来执行一个字符串表达式,并返回表达式的值。其语法格式如下图所示:

用几个例子帮大家理解,在交互式环境中输入如下命令:

eval("pow(3,3)")

num = 1
eval("num + 2")

输出结果:

input()

在Python中,我们经常希望自己的程序能够实现交互行为,所以学了基础知识后还需继续学习GUI或者web开发等等。

但实际上,Python的内置函数中input()就可以帮助我们实现最简单的交互行为。input()函数接受一个标准输入数据,返回为 string 类型。在交互式环境中输入如下命令:

name = input("输入你的名字: ")
print(f"欢迎你,{name}!")

运行结果如下图所示:

abs()

abs()函数中的abs是 absolute 的缩写,它会返回数字的绝对值。在交互式环境中输入如下命令:

abs(-555)

输出:

555

round()

round()是又一个处理数值的内置函数,它返回浮点数x的四舍五入值。在交互式环境中输入如下命令:

round(99.95)

输出:

100

在交互式环境中输入如下命令:

round(100.04)

输出:

100

any()

any()函数用于判断给定的可迭代参数iterable是否全部为False,则返回False,如果有一个为True,则返回True。在我自己的实际应用中,通常与列表一起使用,

在交互式环境中输入如下命令:

any([TrueFalseTrue])

输出:

True

any()函数也可以用于检查空列表:

any([])

输出:

False

当然,用len(list)是否大于0来检查空列表是个更好的选择。

format()

python2.5版本之前,我们使用的是老式字符串格式化输出%s

从python3.0版本开始起(python2.6同期发布),Python中同时支持两个版本的格式化,多出来的一个新版本就是利用format()函数,进行格式化输出。在Python中,我们经常使用format()函数对文本、数字进行格式化。在交互式环境中输入如下命令:

"人生苦短,快学{}!".format("Python")
print("{:.2%}".format(0.123456789))

输出结果如下图所示:

但是python3.6版本后,又引入了一种新的字符串格式化方式f-string。从%s格式化到format格式化再到f-string格式化,格式化的方式越来越直观,f-string的效率也较前两个高一些,使用起来也比前两个更简单一些。

不过还是建议大家学习使用format()函数,关于Python的3种字符串格式化的对比,可以参考之前的文章!

Python的3种字符串格式化,做个超全对比!

Python 中的一个对数据科学应用程序肯定非常有用的函数是 format() 方法。此方法可用于使用简单的字符将任何值放入给定格式。例如,我们可以使用以下语法将 0.5 的值转换为百分比:

x = .5
fifty_percent = format(x, '%')

我对这个函数的唯一问题,更具体地说——它在数据科学中的应用——是这个新格式化值的数据类型没有保留。我认为这在某种程度上破坏了这个函数的价值。例如,如果我们的值被转换为百分比类型,那也很好,但看看我们得到的类型:

print(type(fifty_percent))
print(fifty_percent)
<class 'str'>
50.000000%

然而,有一点缺点,当然还有很多情况下这个函数可以派上用场——而且在基础 Python 中,它当然值得了解。

reversed()

reversed()函数返回一个反转的迭代器,要转换的序列,可以是元祖、字符串、列表或者range。

在交互式环境中输入如下命令:

# 列表
aa = [12435]
list(reversed(aa))
...

输出结果如下所示,均进行了翻转

小结

人生苦短,快学Python!Python作为最适合初学者直接上手的语言,提供了很多的内置函数,虽然这些内置函数并没有广为人知,但他们却具有非常强大的功能。

大家可以多使用Python的内置函数,既能提高自己的Python程序速度,同时还能保持代码简洁易懂。此外,想了解内置函数中LambdaMapReduceenumerateZipFilter等高级函数具体用法的同学,可以查看之前的文章

如果喜欢今天的分享,欢迎给本文点赞👍

推荐阅读


新书上市


《算力:数字经济的新引擎》

互联网的普及,大数据、云计算、5G、人工智能、区块链等技术的成熟,促成了数字经济的大繁荣。以计算能力为基础,万物感知、万物互联、万物智能的数字经济新时代正在到来。数据量呈爆发式增长,对算力的需求达到空前高度,算力成为数字经济的新引擎。


↓ 点击阅读原文,查看作者新书立减69元!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存