(欢迎各位喜欢文章的读者关注和点赞!)
一、Python内置常用函数
在Python中,有许多的内置函数,便于程序员简单快捷地调用达到一些比较实用的目的。在本段落中,我们来介绍一些常用的函数。
不过注意一点,本文所介绍的内置函数,仅说明了常用的调用形式,对于其自带的一些其他的功能控制参数,留给读者根据实际的开发需求去探索。
(1)函数或方法
def add(a, b):return a + b
你可能在其他一些介绍Python的书籍或资料中看到有将函数叫做“方法”的,这其实不过是叫法上的差异罢了,其目的都是接收一些数据然后计算并返回结果。我更加偏向于实用“函数”这个叫法,因为它的功能很类似于数学中的函数“y=f(x)”,或者说多元函数“y=f(x1, x2, x3, …)”,因变量“y”对应了return关键词后面的内容,“f”对应了函数名如上方的“add”,而一众函数自变量“x”则是程序中函数的输入参数如上方的“a”和“b”。
调用函数时,直接输入函数名,并在括号中按照定义的参数顺序依次将值或对应的变量填入即可。如果使用参数名键值输入的方式,则可以无视函数定义时的参数顺序:
y = add(1, 2)print(y) # Output: 3x1, x2 = 5, 6 # 依次定义 x1 和 x2 的值y = add(x1, x2)print(y) # Output: 11y = add(b=x1, a=x2)print(y) # Output: 11y = add(4, b=x2)print(y) # Output: 10
注意,如果混合使用顺序传参和参数名键值传参,则键值传参时的键必须定义在顺序传参内容的后面。
Python函数的定义和操作很多样化,我们会在后面的内容中做详细介绍,此处只是先简单引出函数的概念。
(2)输入输出控制函数
计算机上的软件基本都是要靠程序编写,不管是有界面还是没有界面,其逻辑都是靠软件使用者给定输入或指令,软件程序计算后给出结果或输出。但是,在接触带有UI(用户界面,或者图形界面)的编程前,我们更加偏向于实用命令行来提供计算指令和获取程序输出结果,如下图就是在MacOS环境中的命令行,使用Python解释器运行了一个名为“test.py”的程序文件,只不过这个文件并不存在,因此报错。

Python提供了函数“input”和“print”用于接收用户输入和输出计算结果:
a = input("a >>> ")print("a = " + a)
执行代码,在命令行中,我们假设输入“3”,则a的值即变为3,然后再将其输出:

函数input会将括号中的字符串数据作为用户输入前的先行输出,print则将括号中的内容输出。
需注意,input是将命令行中输入的一整行数据(除行末换行符外)以字符串的形式存储给某个变量,即使输入空格也不会使得读入停止,这不同于C/C++。因此,如果调用input输入的是数据,需要使用int或float等做数据类型转化。
函数print不仅可以接收字符串,还可以使用英文逗号、字符串加减操作等来实现对多个数据对同时输出。但需要注意的是每个print函数会在括号中待输出的内容后默认加一个换行符,使得多次调用print时内容会多行呈现,为了避免不必要的换行,可以在print中添加参数“end”来实现对末尾换行符的修改:
a = 123print(a) # 直接调用输出数字print("a = " + str(123)) # 字符串不能直接拼接数字print("a", a) # 逗号分隔,会在中间以空格连接print("line 1, ", end="") # 去除输出末尾换行符print("line 1.5")print("line 2")"""Output:123a = 123a 123line 1, line 1.5line 2"""
(3)类型检测函数
由于Python不显示定义变量的类型,例如变量“x”在一开始定义为整数1,在后续过程中被变更为浮点数1.0,这是合法的。而在程序编写时,我们往往会需要对变量的类型有一些要求,例如我们不想字符串变量作为数字参与数学计算。此时,可以使用“type”函数,它接收一个变量或一个值作为参数,返回变量或值的数据类型:
i, d, s = 1, 2.5, "123"def f(a, b):return a + bprint(type(i)) # Output: <class 'int'>print(type(d)) # Output: <class 'float'>print(type(s)) # Output: <class 'str'>print(type(f)) # Output: <class 'function'>
除了使用type,还可以使用“isinstance”,它接收一个待检测类型的变量或值以及一个或一系列(以元组表示)目标数据类型作为输入,用于判断这个变量或值是否为该数据类型:
a = 5print(isinstance(a, int)) # Output: Trueprint(isinstance(a, str)) # Output: Falseprint(isinstance(a, (int, str))) # Output: True
(4)排序函数
排序是很常见的操作,Python也提供了排序函数,用于对元组、列表、字典、集合等可迭代类型变量的排序:
array = [2, 3, 5, 1, 4]# 升序array = list(sorted(array))print(array) # Output: [1, 2, 3, 4, 5]# 降序array = list(sorted(array, reverse=True))print(array) # Output: [5, 4, 3, 2, 1]kv_map = {2: "3", 1: "2", 3: "1"}# 按键升序kv_map = dict(sorted(kv_map.items(), key=lambda x: x[0]))print(kv_map) # Output: {1: '2', 2: '3', 3: '1'}# 按值降序kv_map = dict(sorted(kv_map.items(), key=lambda x: x[1], reverse=True))print(kv_map) # Output: {2: '3', 1: '2', 3: '1'}
注意,sorted函数返回的并不是排序前变量的类型,而是一个可迭代数据类型的变量,因此需要自行对其进行强制类型转换。字典的排序有些不同,需要先调用items函数将其转化为键值对元组序列,然后在进行排序,其使用到的key参数接收了一个lambda(拉姆达)函数,用于控制对键还是值操作,lambda函数的介绍放在后续内容。
二、顺序逻辑
一般的编程语言,讲究的都是顺序逻辑执行程序,例如以下程序段:
a = 1print("No.1: a = " + str(a))a = a + 1 # 执行 a 增加 1 操作print("No.2: a = " + str(a))
代码首先赋值a为1,然后输出a的值;紧接着对a进行加1操作(再次强调“=”为赋值语句,把右侧的值或计算结果存到左侧的变量中),使其变为2。由于顺序逻辑的控制,其程序的输出内容必然严格为:
No.1: a = 1No.2: a = 2
结果不可能出现No.2语句在No.1语句之前的情况,除非使用了多线程调度两个print函数,但是此处我们暂时不介绍也不涉及多线程操作。
不过要注意一点的是,顺序逻辑值得是代码片段的逐行执行,其内在依然存在跳转。例如当我们定义了add函数后,代码不会主动计算该函数,因为没有给定相关的参数,只有当我们在后续的代码中调用了该函数并传递参数,程序运行至此才会跳转至add函数的计算代码中,按顺序执行其计算代码。
这种代码执行方式对应便捷直观的逻辑,将代码的顺序执行视为我们在阅读书籍,调用函数则是在我们遇到生僻字时需要查字典,字典则是我们事先定义好的函数或计算逻辑。
三、计算的简便表达
这里用一个小段落来简要说明一下,在Python计算中,对某一变量(例如数字、字符串等)进行加、减、乘、除、取余等操作后再将结果赋值给原变量时,除了可以使用以下的操作外:
a = a + 1a = a - 2a = a * 3a = a / 4a = a % 5
其可以直接简化成:
a += 1a -= 2a *= 3a /= 4a %= 5
需要注意的是,这种简化只适用于变量能够放置于第一个计算符号前的情况。这样的表达其实与一开始的计算没有区别,只是表达和编程偏好上的差异,读者在阅读其他代码时如遇到类似的表达时明白其计算方法即可。
往期回顾~~~
爆火AI OpenClaw 的“灵魂”秘密!一文教你玩转 SOUL.md,打造专属高冷御姐!
给你的AI装上“机械臂”:OpenClaw Skills深度玩法与实战
2026最强AI外挂:OpenClaw必装Skill清单大揭秘