欢迎光临
我们一直在努力

Python内置函数30例:语法案例全解析

好的!以下是对Python内置函数的全面解析,涵盖30个核心函数的语法、案例与最佳实践。内容严格遵循您要求的格式规范:


1. print()

语法:print(*objects, sep=' ', end='\\n', file=sys.stdout, flush=False)
功能:输出内容到标准输出。
案例:

print("Hello", "World", sep="-") # 输出:Hello-World

最佳实践:使用sep和end参数优化输出格式。


2. len()

语法:len(s)
功能:返回对象的长度(如字符串、列表等)。
案例:

s = "Python"
print(len(s)) # 输出:6

最佳实践:适用于所有可迭代对象,但对无限迭代器无效。


3. type()

语法:type(object)
功能:返回对象的类型。
案例:

print(type(42)) # 输出:<class 'int'>

最佳实践:调试时优先使用,生产代码中建议isinstance()。


4. range()

语法:range(stop) 或 range(start, stop, step)
功能:生成整数序列。
案例:

for i in range(3):
print(i) # 输出:0, 1, 2

最佳实践:用列表推导式替代list(range())更高效。


5. input()

语法:input(prompt)
功能:读取用户输入。
案例:

name = input("Enter your name: ")
print(f"Hello, {name}!")

最佳实践:对输入内容做安全校验(如防注入)。


6. int()

语法:int(x, base=10)
功能:将字符串或数字转换为整数。
案例:

print(int("10")) # 输出:10
print(int("0xFF", 16)) # 输出:255

最佳实践:处理用户输入时指定base参数。


7. str()

语法:str(object)
功能:将对象转换为字符串。
案例:

print(str(3.14)) # 输出:"3.14"

最佳实践:优先用f-string或format()做复杂格式化。


8. list()

语法:list(iterable)
功能:将可迭代对象转换为列表。
案例:

print(list("abc")) # 输出:['a', 'b', 'c']

最佳实践:直接[]创建列表更高效。


9. dict()

语法:dict(**kwarg) 或 dict(mapping)
功能:创建字典。
案例:

d = dict(a=1, b=2)
print(d) # 输出:{'a': 1, 'b': 2}

最佳实践:字面量{}语法更简洁。


10. set()

语法:set(iterable)
功能:创建无序不重复集合。
案例:

s = set([1, 2, 2, 3])
print(s) # 输出:{1, 2, 3}

最佳实践:用集合推导式{x for x in iterable}。


11. tuple()

语法:tuple(iterable)
功能:创建元组。
案例:

t = tuple("abc")
print(t) # 输出:('a', 'b', 'c')

最佳实践:不可变数据用元组存储更安全。


12. bool()

语法:bool(x)
功能:返回对象的布尔值。
案例:

print(bool(0)) # 输出:False
print(bool("hi")) # 输出:True

最佳实践:避免直接转换,用if x:隐式判断。


13. sum()

语法:sum(iterable, start=0)
功能:计算数值总和。
案例:

print(sum([1, 2, 3])) # 输出:6

最佳实践:对浮点数用math.fsum()减少误差。


14. max()

语法:max(iterable, *args, key=None)
功能:返回最大值。
案例:

print(max([3, 1, 4], key=lambda x: -x)) # 输出:1(最小值的逆操作)

最佳实践:用key参数自定义比较规则。


15. min()

语法:min(iterable, *args, key=None)
功能:返回最小值。
案例:

print(min("Apple", "Banana", key=len)) # 输出:"Apple"

最佳实践:同max(),灵活使用key。


16. sorted()

语法:sorted(iterable, key=None, reverse=False)
功能:返回排序后的列表。
案例:

print(sorted([3, 1, 2], reverse=True)) # 输出:[3, 2, 1]

最佳实践:对字典排序用sorted(dict.items())。


17. enumerate()

语法:enumerate(iterable, start=0)
功能:返回带索引的枚举对象。
案例:

for i, v in enumerate(["a", "b"]):
print(i, v) # 输出:0 a, 1 b

最佳实践:替代range(len())提高可读性。


18. zip()

语法:zip(*iterables)
功能:将多个可迭代对象打包成元组。
案例:

a = [1, 2]; b = ["a", "b"]
print(list(zip(a, b))) # 输出:[(1, 'a'), (2, 'b')]

最佳实践:处理不等长序列时用itertools.zip_longest()。


19. map()

语法:map(func, iterable)
功能:对可迭代对象应用函数。
案例:

print(list(map(str.upper, ["a", "b"]))) # 输出:['A', 'B']

最佳实践:优先用列表推导式[func(x) for x in iterable]。


20. filter()

语法:filter(func, iterable)
功能:过滤出满足条件的元素。
案例:

print(list(filter(lambda x: x > 0, [-1, 2, 0]))) # 输出:[2]

最佳实践:推导式[x for x in iterable if condition]更直观。


21. any()

语法:any(iterable)
功能:判断是否存在真值元素。
案例:

print(any([False, True, False])) # 输出:True

最佳实践:用于快速检查条件满足性。


22. all()

语法:all(iterable)
功能:判断所有元素为真。
案例:

print(all([1, True, "text"])) # 输出:True

最佳实践:验证数据完整性(如配置项)。


23. isinstance()

语法:isinstance(object, classinfo)
功能:检查对象是否为指定类型。
案例:

print(isinstance(42, int)) # 输出:True

最佳实践:优先于type()做类型检查。


24. issubclass()

语法:issubclass(cls, classinfo)
功能:检查类是否为子类。
案例:

print(issubclass(bool, int)) # 输出:True

最佳实践:用于动态类型系统中的继承验证。


25. callable()

语法:callable(object)
功能:检查对象是否可调用。
案例:

print(callable(print)) # 输出:True

最佳实践:在调用前验证避免TypeError。


26. getattr()

语法:getattr(object, name, default)
功能:获取对象属性。
案例:

s = "hello"
print(getattr(s, "upper")()) # 输出:"HELLO"

最佳实践:动态属性访问时提供default防错。


27. hasattr()

语法:hasattr(object, name)
功能:检查对象是否包含属性。
案例:

print(hasattr([], "append")) # 输出:True

最佳实践:与getattr()配合使用。


28. id()

语法:id(object)
功能:返回对象的内存地址标识。
案例:

a = []; b = []
print(id(a) == id(b)) # 输出:False

最佳实践:用于调试对象引用问题。


29. round()

语法:round(number, ndigits)
功能:四舍五入到指定小数位。
案例:

print(round(3.14159, 2)) # 输出:3.14

最佳实践:金融计算用decimal模块替代。


30. exec()

语法:exec(source, globals=None, locals=None)
功能:执行动态代码字符串。
案例:

exec("print('Dynamic!')") # 输出:"Dynamic!"

最佳实践:避免使用!存在严重安全风险(如代码注入)。


总结

  • 优先内置函数:如map/filter虽可用推导式替代,但在链式操作中更简洁。
  • 类型安全:用isinstance替代type,支持继承检查。
  • 动态执行风险:eval()和exec()需严格隔离用户输入。
  • 性能考量:对大数据集用生成器(如range)而非列表。
  • # 综合案例:统计正偶数
    nums = [-1, 2, 3, 4]
    result = sum(1 for n in nums if n > 0 and n % 2 == 0)
    print(result) # 输出:2

    希望这份解析能助您高效使用Python内置函数!

    赞(0)
    未经允许不得转载:171主机测评 » Python内置函数30例:语法案例全解析
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址