在 Python3 中,内置函数(Built-in Functions)是 Python 提供的直接可以使用的函数,它们可以执行各种常见的操作,如类型转换、排序、数学计算等。Python 3 提供了众多内置函数。这里将详细介绍一些常用的内置函数。
1. 常用内置函数
1.1 print()
print() 用于在控制台输出内容。
print("Hello, World!")
输出:
Hello, World!
1.2 len()
len() 返回对象(如字符串、列表、元组等)的长度(元素个数)。
my_list = [1, 2, 3, 4]
print(len(my_list))
输出:
4
1.3 type()
type() 返回对象的类型。
x = 5
print(type(x)) # <class 'int'>
1.4 input()
input() 用于从用户输入获取一行数据(字符串形式)。
name = input("Enter your name: ")
print(f"Hello, {name}!")
1.5 int()
int() 用于将一个字符串或其他数字类型转换为整数。
x = "10"
print(int(x)) # 10
1.6 float()
float() 将一个字符串或整数转换为浮动小数类型。
x = "3.14"
print(float(x)) # 3.14
1.7 str()
str() 将任何类型的数据转换为字符串。
x = 5
print(str(x)) # "5"
1.8 abs()
abs() 返回一个数的绝对值。
x = -5
print(abs(x)) # 5
1.9 max()
max() 返回给定参数中的最大值。
numbers = [1, 2, 3, 4]
print(max(numbers)) # 4
1.10 min()
min() 返回给定参数中的最小值。
numbers = [1, 2, 3, 4]
print(min(numbers)) # 1
1.11 sum()
sum() 返回所有数值元素的总和。
numbers = [1, 2, 3, 4]
print(sum(numbers)) # 10
1.12 sorted()
sorted() 用于返回一个排序后的列表,但不会修改原始列表。
numbers = [4, 3, 1, 2]
print(sorted(numbers)) # [1, 2, 3, 4]
1.13 reversed()
reversed() 返回一个反向的迭代器。
numbers = [1, 2, 3]
print(list(reversed(numbers))) # [3, 2, 1]
1.14 range()
range() 生成一个整数序列,常用于循环迭代。
for i in range(5):
print(i)
输出:
0
1
2
3
4
1.15 enumerate()
enumerate() 返回一个枚举对象,通常用于遍历序列时,获取元素的索引和值。
my_list = ['a', 'b', 'c']
for index, value in enumerate(my_list):
print(index, value)
输出:
0 a
1 b
2 c
1.16 zip()
zip() 用于将多个可迭代对象压缩成一个元组组成的迭代器。
names = ['Alice', 'Bob', 'Charlie']
scores = [85, 90, 88]
for name, score in zip(names, scores):
print(f'{name}: {score}')
输出:
Alice: 85
Bob: 90
Charlie: 88
1.17 all()
all() 检查给定的可迭代对象中是否所有元素都为真(或可判断为真)。
values = [True, True, False]
print(all(values)) # False
1.18 any()
any() 检查给定的可迭代对象中是否至少有一个元素为真。
values = [False, True, False]
print(any(values)) # True
1.19 isinstance()
isinstance() 检查一个对象是否是某个类或其子类的实例。
x = 5
print(isinstance(x, int)) # True
1.20 id()
id() 返回对象的唯一标识符。
x = 10
print(id(x))
2. 更高级的内置函数
2.1 filter()
filter() 用于过滤一个可迭代对象,根据给定的函数返回符合条件的元素。
numbers = [1, 2, 3, 4, 5]
even_numbers = filter(lambda x: x % 2 == 0, numbers)
print(list(even_numbers)) # [2, 4]
2.2 map()
map() 用于将一个函数应用到可迭代对象的每个元素上,并返回一个新的迭代器。
numbers = [1, 2, 3, 4]
squared_numbers = map(lambda x: x ** 2, numbers)
print(list(squared_numbers)) # [1, 4, 9, 16]
2.3 reduce()
reduce() 是 Python functools 模块中的一个函数,它对一个可迭代对象中的所有元素进行累积操作。它不像 map() 和 filter() 那样返回一个列表,而是返回一个值。
from functools import reduce
numbers = [1, 2, 3, 4]
result = reduce(lambda x, y: x + y, numbers)
print(result) # 10
2.4 eval()
eval() 将字符串作为 Python 表达式执行并返回结果。慎用,尤其是处理外部输入时,因为它可能导致代码注入风险。
expression = "3 + 4 * 2"
result = eval(expression)
print(result) # 11
2.5 exec()
exec() 用于执行动态生成的 Python 代码,类似于 eval(),但它可以执行更复杂的 Python 代码块(如函数、循环等)。
code = """
def greet(name):
return f'Hello, {name}!'
"""
exec(code)
print(greet("Alice")) # Hello, Alice!
2.6 globals() 和 locals()
globals() 返回当前全局符号表(字典),locals() 返回当前局部符号表。
x = 10
print(globals()) # 显示全局变量
2.7 set()
set() 用于创建一个集合,它是一个无序不重复元素集。
my_set = set([1, 2, 3, 4, 4, 5])
print(my_set) # {1, 2, 3, 4, 5}
2.8 frozenset()
frozenset() 用于创建一个不可变的集合。
my_frozenset = frozenset([1, 2, 3])
print(my_frozenset) # frozenset({1, 2, 3})
2.9 callable()
callable() 检查一个对象是否是可调用的(即是否可以作为函数调用)。
x = 5
print(callable(x)) # False
def my_function():
pass
print(callable(my_function)) # True
2.10 round()
round() 用于对浮点数进行四舍五入。
x = 3.14159
print(round(x, 2)) # 3.14
3. 总结
Python 提供了很多内置函数来简化常见任务的处理。掌握这些内置函数,可以提高你的编程效率和代码可读性。常用的函数包括 print(), len(), type(), sorted(), map(), filter() 等。
更多详细内容请请关注其他相关文章!