前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python中最常用的10个内置函数

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

作者头像
快学Python
发布2022-11-28 14:42:13
6980
发布2022-11-28 14:42:13
举报
文章被收录于专栏:快学Python快学Python

人生苦短,快学Python!

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

help()

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

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

range()

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

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

代码语言:javascript
复制
list(range(10))

输出:

代码语言:javascript
复制
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

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

代码语言:javascript
复制
list(range(0, 10, 2))

输出:

代码语言:javascript
复制
[0, 2, 4, 6, 8]

sorted()

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

代码语言:javascript
复制
sorted([2, 4, 0, 8, 6])

sorted((2, 4, 0, 8, 6))

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

输出结果:

sorted()函数和sort()函数是有一定区别的: sortt()是应用在列表list上的方法,而sorted可以对所有可迭代的对象进行排序操作。 列表list的sort()方法返回的是对已经存在的列表进行操作,而内置函数sorted()返回的是一个新的list,而不是在原来的基础上进行的操作。

eval()

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

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

代码语言:javascript
复制
eval("pow(3,3)")

num = 1
eval("num + 2")

输出结果:

input()

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

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

代码语言:javascript
复制
name = input("输入你的名字: ")
print(f"欢迎你,{name}!")

运行结果如下图所示:

abs()

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

代码语言:javascript
复制
abs(-555)

输出:

代码语言:javascript
复制
555

round()

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

代码语言:javascript
复制
round(99.95)

输出:

代码语言:javascript
复制
100

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

代码语言:javascript
复制
round(100.04)

输出:

代码语言:javascript
复制
100

any()

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

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

代码语言:javascript
复制
any([True, False, True])

输出:

代码语言:javascript
复制
True

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

代码语言:javascript
复制
any([])

输出:

代码语言:javascript
复制
False

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

format()

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

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

代码语言:javascript
复制
"人生苦短,快学{}!".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 的值转换为百分比:

代码语言:javascript
复制
x = .5
fifty_percent = format(x, '%')

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

代码语言:javascript
复制
print(type(fifty_percent))
print(fifty_percent)
<class 'str'>
50.000000%

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

reversed()

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

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

代码语言:javascript
复制
# 列表
aa = [1, 2, 4, 3, 5]
list(reversed(aa))
...

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

小结

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

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

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

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-11-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 快学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • help()
  • range()
  • sorted()
  • eval()
  • input()
  • abs()
  • round()
  • any()
  • format()
  • reversed()
  • 小结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档