从A到Z,一文通览Python所有内置函数:编程效率提升 100%
yuyutoo 2024-12-11 17:56 5 浏览 0 评论
添加图片注释,不超过 140 字(可选)
大家好,我是章北海
Python中的内置函数,这些函数覆盖了从基本数据处理到高级编程功能的各种用途。
下面,我将逐一介绍每个函数的用途和提供相应的代码示例。
A
- abs():返回数字的绝对值。print(abs(-5)) # 输出: 5
- aiter():返回异步迭代器。async def async_iter(): for i in range(3): yield i async for value in aiter(async_iter()): print(value) # 输出: 0, 1, 2
- all():判断给定的可迭代参数 iterable 中的所有元素是否都为 TRUE。print(all([True, True, True])) # 输出: True
- any():判断给定的可迭代参数 iterable 是否有任一元素为 TRUE。print(any([False, True, False])) # 输出: True
- anext():返回异步迭代器的下一个元素。async def async_iter(): for i in range(3): yield i aiter_obj = aiter(async_iter()) print(await anext(aiter_obj)) # 输出: 0
- ascii():返回对象的可打印表示形式,其中非 ASCII 字符通过 \x, \u 或 \U 编码。print(ascii("你好")) # 输出: '\u4f60\u597d'
B
- bin():将整数转换成前缀为“0b”的二进制字符串。print(bin(10)) # 输出: '0b1010'
- bool():将给定参数转换成布尔类型。print(bool(0)) # 输出: False
- breakpoint():调用此函数将触发一个断点。# breakpoint()
- bytearray():返回一个新的字节数组。print(bytearray([1, 2, 3])) # 输出: bytearray(b'\x01\x02\x03')
- bytes():返回一个新的字节序列对象。print(bytes([1, 2, 3])) # 输出: b'\x01\x02\x03'
C
- callable():检查对象是否可调用。def func(): return "Hello" print(callable(func)) # 输出: True
- chr():返回对应于整数 i 的 ASCII 字符。print(chr(97)) # 输出: 'a'
- classmethod():把一个方法声明为类的方法。class C: @classmethod def f(cls): print(cls.__name__) C.f() # 输出: 'C'
- compile():将源字符串编译成代码或 AST 对象。code = compile('print(42)', '', 'exec') exec(code) # 输出: 42
- complex():创建一个复数。print(complex(1, 2)) # 输出: (1+2j)
D
- delattr():删除对象的属性。class Person: name = "John" delattr(Person, 'name') # print(Person.name) # 将引发 AttributeError
- dict():创建数据字典。print(dict(a=1, b=2)) # 输出: {'a': 1, 'b': 2}
- dir():尝试返回对象的属性列表。print(dir([1, 2, 3])) # 输出包括: ['append', 'count', 'extend', ...]
- divmod():返回包含商和余数的元组。print(divmod(7, 2)) # 输出: (3, 1)
E
- enumerate():将一个可遍历的数据对象组合为一个索引序列,同时列出数据和数据下标。for index, value in enumerate(['a', 'b', 'c']): print(index, value) # 输出: 0 a, 1 b, 2 c
- eval():执行一个字符串表达式,并返回表达式的值。print(eval('3 + 4')) # 输出: 7
- exec():执行动态Python代码。exec('print("Hello World")') # 输出: Hello World
F
- filter():使用指定方法过滤序列。numbers = [1, 2, 3, 4] even = filter(lambda x: x % 2 == 0, numbers) print(list(even)) # 输出: [2, 4]
- float():将一个字符串或数字转换为浮点数。print(float("10.5")) # 输出: 10.5
- format():格式化输出字符串。print(format(0.5, '%')) # 输出: '50.000000%'
- frozenset():创建一个不可变集合。print(frozenset([1, 2, 3])) # 输出: frozenset({1, 2, 3})
G
- getattr():获取对象的属性。class Person: name = "John" print(getattr(Person, 'name')) # 输出: John
- globals():返回当前全局符号表的字典。print(globals()) # 输出包含当前全局变量的字典
H
- hasattr():判断对象是否包含对应的属性。class Person: name = "John" print(hasattr(Person, 'name')) # 输出: True
- hash():返回对象的哈希值。print(hash("test")) # 输出: 哈希值
- help():调用内置的帮助系统。# help() # 交互式帮助
- hex():将整数转换成前缀为“0x”的十六进制字符串。print(hex(255)) # 输出: '0xff'
I
- id():返回对象的唯一标识符。obj = object() print(id(obj)) # 输出: 对象的内存地址
- input():接收输入。# name = input("Enter your name: ")
- int():将一个字符串或数字转换为整数。print(int("10")) # 输出: 10
- isinstance():检查对象是否为指定类的实例。print(isinstance(5, int)) # 输出: True
- issubclass():检查一个类是否是另一个类的子类。class A: pass class B(A): pass print(issubclass(B, A)) # 输出: True
- iter():返回迭代器。i = iter([1, 2, 3]) print(next(i)) # 输出: 1
L
- len():返回对象的长度或项目数。print(len([1, 2, 3])) # 输出: 3
- list():将一个可迭代的对象转换为列表。print(list((1, 2, 3))) # 输出: [1, 2, 3]
- locals():返回当前局部符号表的字典。def func(): a = 1 print(locals()) # 输出: {'a': 1} func()
M
- map():对指定序列做映射。def square(x): return x ` 2 numbers = [1, 2, 3, 4] squares = map(square, numbers) print(list(squares)) # 输出: [1, 4, 9, 16]
- max():返回最大值。print(max([1, 2, 3])) # 输出: 3
- memoryview():返回给定参数的内存查看对象。bytes_obj = bytes([1, 2, 3]) mv = memoryview(bytes_obj) print(mv[1]) # 输出: 2
- min():返回最小值。print(min([1, 2, 3])) # 输出: 1
N
- next():返回迭代器的下一个项目。it = iter([1, 2, 3]) print(next(it)) # 输出: 1
O
- object():返回一个新的无特征对象。obj = object() print(type(obj)) # 输出: <class 'object'>
- oct():将整数转换成前缀为“0o”的八进制字符串。print(oct(8)) # 输出: '0o10'
- open():打开一个文件,并返回对应的文件对象。# f = open("test.txt", "r")
- ord():返回对应字符的 ASCII 数值,或者 Unicode 数值。print(ord('a')) # 输出: 97
P
- pow():计算 x 的 y 次方。print(pow(2, 3)) # 输出: 8
- print():打印指定的文字或变量的值。print("Hello, world!") # 输出: Hello, world!
- property():在新式类中返回属性值。class C: def __init__(self, x): self._x = x def getx(self): return self._x def setx(self, value): self._x = value def delx(self): del self._x x = property(getx, setx, delx, "I'm the 'x' property.") c = C(123) print(c.x) # 输出: 123 c.x = 456 print(c.x) # 输出: 456
R
- range():生成一个数字序列。for i in range(5): print(i) # 输出: 0, 1, 2, 3, 4
- repr():返回对象的字符串表示。s = "Hello, world!" print(repr(s)) # 输出: 'Hello, world!'
- reversed():返回一个反向的迭代器。for i in reversed([1, 2, 3]): print(i) # 输出: 3, 2, 1
- round():四舍五入,返回浮点数 x 的四舍五入值。print(round(3.14159, 2)) # 输出: 3.14
S
- set():创建一个无序不重复元素集。print(set([1, 2, 2, 3])) # 输出: {1, 2, 3}
- setattr():设置属性值。class Person: name = "John" setattr(Person, 'age', 30) print(Person.age) # 输出: 30
- slice():返回一个切片对象。lst = [1, 2, 3, 4, 5] sl = slice(1, 4) print(lst[sl]) # 输出: [2, 3, 4]
- sorted():返回已排序的列表。print(sorted([3, 1, 2])) # 输出: [1, 2, 3]
- staticmethod():创建静态方法。class C: @staticmethod def f(): print('static method') C.f() # 输出: 'static method'
- str():将对象转换为字符串。print(str(123)) # 输出: '123'
- sum():计算输入的数字的总和。print(sum([1, 2, 3])) # 输出: 6
- super():用于调用父类(超类)的一个方法。class Base: def __init__(self): print("Base init") class Derived(Base): def __init__(self): super().__init__() print("Derived init") Derived() # 输出: Base init, Derived init
T
- tuple():将一个可迭代系列转换为元组。print(tuple([1, 2, 3])) # 输出: (1, 2, 3)
- type():返回对象的类型。print(type(123)) # 输出: <class 'int'>
V
- vars():返回对象的 dict 属性。class Person: def __init__(self, name): self.name = name p = Person("John") print(vars(p)) # 输出: {'name': 'John'}
Z
- zip():将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。a = [1, 2, 3] b = [4, 5, 6] zipped = zip(a, b) print(list(zipped)) # 输出: [(1, 4), (2, 5), (3, 6)]
_
- __import__():这是一个高级函数,用于动态导入模块。math = __import__('math') print(math.sqrt(16)) # 输出: 4.0
以上就是Python内置函数的简要介绍和示例。
这些函数为Python编程提供了强大的支持,使得各种操作更加便捷。
模型篇P1:机器学习基本概念
迄今最好的AI代码编辑器,编程只需狂按Tab
【大模型实战,完整代码】AI 数据分析、可视化项目
108页PDF小册子:搭建机器学习开发环境及Python基础
116页PDF小册子:机器学习中的概率论、统计学、线性代数
全网最全 Python、机器学习、AI、LLM 速查表(100 余张)
Obsidian AI写作神器:一键配置DeepSeek,写作效率飙升1000%!
基于 QAnything 的知识库问答系统:技术解析与应用实践【附代码】
相关推荐
- IntelliJ IDEA插件开发(java开发idea插件)
-
引言IntelliJIDEA是JetBrains公司开发的一款广受欢迎的集成开发环境(IDE)。它不仅支持Java等多种编程语言,还通过插件系统提供了强大的扩展能力。本分享旨在介绍如何使用Java开...
- 如何验证自己的idea或者如何产生idea?小编教你如何检索……
-
申请专利前首先要做的是检索查重,如果你的构思已经被别人申请过专利,那么就不符合专利“新颖性”的要求。因此,如果你有了idea之后如何验证自己的idea具备新颖性,或者如何产生idea呢?今天,小编带着...
- idea激活码失效了,这样解决,稳定使用!
-
最近官网封控比较严格,正式版激活码是不是又掉线了?掉线请看这里,这里有一个解决的方法,就是让工具不联网就可以继续使用激活码了。激活码本来就叫离线激活码,现在要怎么使id工具不联网?·可以打开这里帮助,...
- 5分钟解决 IntelliJ IDEA 使用问题(免费激活至 2100 年)
-
直接进入正题!效果安装1.官网下载idea...
- 【中高级前端必看】- 结合代码实践,全面学习前端工程化
-
前言前端工程化,简而言之就是软件工程+前端,以自动化的形式呈现。就个人理解而言:前端工程化,从开发阶段到代码发布生产环境,包含了以下几个内容:开发构建测试部署...
- Android绘制流程(android界面绘制)
-
Android绘制流程来源:极客头条MFC、WTL、DuiLib、QT、Skia、OpenGL。Android里面的画图分为2D和3D两种:2D是由Skia来实现的,3D部分是由OpenGL实现...
- ExpandListView 的一种巧妙写法(g的另一种写法上下两个圈连起来怎么打)
-
ExpandListView大家估计也用的不少了,一般有需要展开的需求的时候,大家不约而同的都想到了它然后以前自己留过记录的一般都会找找以前自己的代码,没有记录习惯的就会百度、谷歌,这里吐槽一下,好几...
- 通过圆形载入View了解自定义View(圆形div怎么搞)
-
这是自定义View的第一篇文章,通过制作简单的自定义View来了解自定义View的流程。自定义View是Android学习和开发中必不可少的一部分。通过自定义View我们可以制作丰富绚丽的控件,自定...
- 鸿蒙开源第三方组件——自定义流式布局组件FlowLayout_ohos
-
前言基于安卓平台的自定义流式布局组件FlowLayout(https://blog.csdn.net/fzhhsa/article/details/103003019),实现了鸿蒙的功能化迁移和重构...
- 手把手带你写FlowLayout(流式布局)
-
流式布局在android中主要应用在搜索记录和用户标签,下面是效果图首先我们分析流式布局的原理。其实就是当一个子view加上之前的子view的宽度超过了父容器的宽度的时候就换行。接下来我们手把手书写流...
- Android View(android view使用mvvm架构)
-
AndroidUI界面架构每个Activity包含一个PhoneWindow对象,PhoneWindow设置DecorView为应用窗口的根视图,在里面就是TitleView和ContentView...
- 《教你步步为营掌握自定义View》一文读后感
-
今天读了简书作者[milter]的一篇文章《教你步步为营掌握自定义View》,大有裨益。作者以幽默风趣、通俗易懂的大白话一步步讲述了View的来龙去脉,甚是详尽,实属自定义View文集中的一篇非常优秀...
- Android面试官:你究竟有多大的勇气,在简历上写了“精通”?
-
所周知,简历上“了解=听过名字;熟悉=知道是啥;熟练=用过;精通=做过东西”。最近在面试,我现在十分后悔在简历上写了“精通”二字…先给大家看看我简历上的技能清单:良好的java基础,熟悉掌握面向对象思...
- iOS 视图---动画渲染机制探究(动画渲染用哪个软件最好)
-
腾讯Bugly特约作者:陈向文终端的开发,首当其冲的就是视图、动画的渲染,切换等等。用户使用App时最直接的体验就是这个界面好不好看,动画炫不炫,滑动流不流畅。UI就是App的门面,它的体验伴...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- IntelliJ IDEA插件开发(java开发idea插件)
- 如何验证自己的idea或者如何产生idea?小编教你如何检索……
- idea激活码失效了,这样解决,稳定使用!
- 5分钟解决 IntelliJ IDEA 使用问题(免费激活至 2100 年)
- 【中高级前端必看】- 结合代码实践,全面学习前端工程化
- Android绘制流程(android界面绘制)
- ExpandListView 的一种巧妙写法(g的另一种写法上下两个圈连起来怎么打)
- 通过圆形载入View了解自定义View(圆形div怎么搞)
- 鸿蒙开源第三方组件——自定义流式布局组件FlowLayout_ohos
- 「经典总结」一个View,从无到有会走的三个流程,你知道吗?
- 标签列表
-
- mybatis plus (70)
- scheduledtask (71)
- css滚动条 (60)
- java学生成绩管理系统 (59)
- 结构体数组 (69)
- databasemetadata (64)
- javastatic (68)
- jsp实用教程 (53)
- fontawesome (57)
- widget开发 (57)
- vb net教程 (62)
- hibernate 教程 (63)
- case语句 (57)
- svn连接 (74)
- directoryindex (69)
- session timeout (58)
- textbox换行 (67)
- extension_dir (64)
- linearlayout (58)
- vba高级教程 (75)
- iframe用法 (58)
- sqlparameter (59)
- trim函数 (59)
- flex布局 (63)
- contextloaderlistener (56)