Python开发必知:8个高频内置函数详解与实战

月亮慢半拍
月亮慢半拍
发布时间:2026-10-13| 4人浏览过
原创

本文深入解析Python中8个最高频使用的内置函数,涵盖print输出控制、isinstance类型检查、range序列生成、enumerate索引枚举、len长度计算、reversed反转、open文件读写及sorted排序。通过具体代码示例与参数详解,帮助开发者掌握高效编程技巧,提升代码可读性与执行效率。

Python语言提供了丰富的内置功能函数,官方文档中列出了69个之多。在实际开发中,部分函数使用频率极高,而另一些则较少涉及。本文精选了开发者日常使用最频繁的8个函数,并逐一解析其详细用法与注意事项。

print():灵活控制输出格式

print()

print函数通常是Python学习者接触的第一个函数,主要作用是将对象输出到标准输出流。它支持打印任意数量的对象,具体定义如下:


print(*objects, sep=' ', end='', file=sys.stdout, flush=False)

objects参数为可变参数,这意味着你可以一次性传入任意多个对象进行打印。


>>> print(1,2,3)1 2 3

默认情况下,多个对象之间以空格分隔。若需更改分隔符,可通过指定sep参数实现,例如使用逗号分隔。


>>> print(1,2,3, sep=',')1,2,3

默认情况下,对象输出至标准输出流。此外,你也可以通过file参数将内容直接写入文件。


>>> print(1,2,3, sep=',', file=open("hello.txt", "w"))

isinstance():精准判断对象类型

isinstance()

isinstance函数用于判断某个对象是否属于指定类的实例。其函数定义如下:

isinstance(object, classinfo)

classinfo参数既可以是单个类型对象,也可以是由多个类型对象组成的元组。只要object的类型匹配元组中的任意一个类型,函数即返回True,否则返回False。


>>> isinstance(1, (int, str))True>>> isinstance("", (int, str))True>>> isinstance([], dict)False

range():高效生成整数序列

range()

range是一个工厂方法,用于构造一个从[start, stop)(不包含stop)区间内的连续、不可变整数序列对象。该序列在功能上与列表相似,具体定义如下:


range([start,] stop [, step]) -> range object

start为可选参数,表示序列的起始值,默认为0。

stop为必选参数,表示序列的终点值(不包含该值)。

step为可选参数,表示序列的步长,默认为1。生成的元素遵循公式 r[i] = start + step*i。

生成0至5的列表示例


>>> >>> range(5)range(0, 5)>>> >>> list(range(5))[0, 1, 2, 3, 4]>>>

默认情况下,range从0开始,生成0到4之间的5个整数(不包含5)。此时step默认为1,即每次递增1。

若需将某个操作重复执行n次,可结合for循环与range函数实现。


>>> for i in range(3):...   print("hello python")...hello pythonhello pythonhello python

设置步长为2的情况


>>> range(1, 10, 2)range(1, 10, 2)>>> list(range(1, 10, 2))[1, 3, 5, 7, 9]

当起点为1,终点为10,步长为2时,每次在前一个元素基础上加2,从而生成1到10之间的所有奇数。

enumerate():便捷获取索引与元素

enumerate()

enumerate函数用于枚举可迭代对象,同时返回每个元素的下标索引值。其函数定义如下:


enumerate(iterable, start=0)

例如:


>>> for index, value in enumerate("python"):...   print(index, value)...0 p1 y2 t3 h4 o5 n

index参数默认从0开始。若显式指定start参数,则下标索引将从start值开始计数。


>>> for index, value in enumerate("python", start=1):...   print(index, value)...1 p2 y3 t4 h5 o6 n

如果不使用enumerate函数,要获取元素的下标索引,则需要编写更多代码:


def my_enumerate(sequence, start=0):  n = start  for e in sequence:    yield n, e    n += 1
>>> for index, value in my_enumerate("python"):  print(index, value)0 p1 y2 t3 h4 o5 n

len():快速获取容器长度

len

len函数用于获取容器对象中的元素个数。例如,判断列表是否为空时,可以使用len函数。


>>> len([1,2,3])3>>> len("python")6>>> if len([]) == 0:    pass

并非所有对象都支持len操作,例如:


>>> len(True)Traceback (most recent call last): File "<stdin>", line 1, in <module>TypeError: object of type 'bool' has no len()

除了序列对象和集合对象外,自定义类必须实现了__len__方法,才能作用于len函数。

reversed():序列反转技巧

reversed()

reversed函数用于反转序列对象。你可以对字符串、列表或元组进行反转操作。


>>> list(reversed([1,2,3]))[3, 2, 1]

open():文件读写核心函数

open()

open函数用于构造文件对象,构建后可对其进行内容的读写操作。


open(file, mode='r', encoding=None)

读操作示例

# 从当前路径打开文件 test.txt,默认以读的方式


>>>f = open("test.txt")>>>f.read()...

有时还需要指定编码格式,否则可能会遇到乱码问题。


f = open("test.txt", encoding='utf8')

写操作示例


>>>f = open("hello.text", 'w', encoding='utf8')>>>f.write("hello python"))

文件中存在内容时,原内容将被覆盖。如果不想覆盖,而是将新内容追加到文件末尾,可以使用a模式。


f = open("hello.text", 'a', encoding='utf8')f.write("!!!")

sorted():安全排序返回新对象

sorted()

sorted函数用于对列表进行重新排序。当然,其他可迭代对象也支持重新排列,该函数返回一个新对象,而原对象保持不变。


>>> sorted([1,4,2,1,0])[0, 1, 1, 2, 4]

以上所述是小编给大家介绍的Python常用的内置函数详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对本站网站的支持!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。