重要内置函数
zip
l1 = [11, 22, 33, 44, 55]
l2 = ['jason', 'kevin', 'oscar', 'jerry', 'tony']
l3 = [1, 2, 3, 4, 5]
res = zip(l1 ,l2, l3)
print(list(res)) # [(11, 'jason', 1), (22, 'kevin', 2), (33, 'oscar', 3), (44, 'jerry', 4), (55, 'tony', 5)]
l1 = [11, 22, 33]
l2 = ['jason', 'kevin', 'oscar', 'jerry', 'tony']
l3 = [1, 2, 3, 4]
res = zip(l1, l2, l3)
print(list(res)) # [(11, 'jason', 1), (22, 'kevin', 2), (33, 'oscar', 3)]

filter
l1 = [11, 22, 33, 44, 55, 66, 77, 88]
res = filter(lambda x:x>40, l1)
print(list(res))

l1 = [21, 12, 53, 64, 76, 32, 11, 22]
res = sorted(l1)
print(res)

常见内置函数
1. abs() 绝对值
print(abs(-100))
print(abs(100))
2. all() 所有数据值对应的布尔值为True结果才是True 否则返回False
print(all([0,1,3,4]))
print(all([1, 2, 3]))
3. any() 所有数据值对应的布尔值有一个为True的结果就是True 否则返回False
print(any([0, None, '', 1]))
print(any([0, None, '']))
4 bin() 二进制 oct() 八进制 hex()十六进制 int() 整型
print(bin(100))
print(oct(100))
print(hex(100))
print(int('100'))
5. bytes() 转换成bytes类型
s1 = '你好啊'
print(s1.encode('utf8'))
print(bytes(s1,'utf8'))
6. callable() 判断名字是否可以加括号调用
name = 'jason'
def index():
print('from index')
print(callable(name))
print(callable(index))
7. chr() ord() 基于ASCII码表做数字与字母的转换
print(chr(65))
print(ord('A'))
8. dir() 返回括号内对象能够调用的名字
print(dir('hello'))
9. divmod() 元组 第一个数据为整除数 第二个是余数
res = divmod(100, 2)
print(res)
res = divmod(100, 3)
print(res)
"""
总数据 每页展示的数据 总页码
100 10 10
99 10 10
101 10 11
"""
page_num ,more = divmod(9999, 20)
if more:
page_num += 1
print('总页码为:', page_num)
print(divmod(99, 10))
10 enumerate() 枚举
l1 = [1,2,3,4,5]
res = enumerate(l1)
print(list(res))
11. eval() exec() 能够识别字符串中的python并执行
s1 = 'print("哈哈哈")'
eval(s1)
exec(s1)
s2 = 'for i in range(100):print(i)'
eval(s2)
exec(s2)
13 id()查看内存地址 input()接收用户输入 isinstance() 判断数据类型
14 map()映射 max()最大值 min()最小值
15 open()
16 pow() 幂指数(次方)
print(pow(2,2))
print(pow(2,3))
print(pow(2,4))
17 range()
18 round() 四舍五入
print(round(98.3))
print(round(98.5))
print(round(98.6))
19 sum() 求和
print(sum([11,22,33,44,55]))
20 zip 拉链
可迭代对象
1. 可迭代对象
对象内置有__iter__方法的都称为可迭代对象
"""
1. 内置方法 通过点的方式能够调用的方法,例如字符串 'hello'.__iter__()
2. __iter__ 双下iter方法
"""
2. 可迭代对象的范围
不是可迭代对象
int float bool 函数对象
是可迭代对象
str list dict tuple set 文件对象
3. 可迭代的含义
"""
迭代: 更新换代(每次更新都必须依赖上一次的结果)
eg:手机app更新
"""
可迭代在python中可以理解为是否支持for循环
迭代器对象
1. 迭代器对象
是由可迭代对象调用__iter__方法产生的
迭代器对象判断的本质是看是否内置有__iter__和__next__
2. 迭代器对象的作用
提供了一种不依赖与索引取值的方式
正因为有迭代器的存在 我们的字典 集合才能够被for循环
3. 迭代器对象实操
s1 = 'hello'
res = s1.__iter__() # 迭代器对象
print(res.__next__()) # 迭代取值 for循环的本质
一旦__next__取不到值 会直接报错
4. 注意事项
可迭代对象调用__iter__会成为迭代器对象 迭代器对象如果还调用__iter__不会有任何变化 还是迭代器对象本身
__iter__ __next__有相应的简写 iter() next()
for循环的本质
for 变量名 in 可迭代对象:
循环体代码
"""
1.先将in后面的数据调用__iter__转变成迭代器对象
2.依次让迭代器对象调用__next__取值
3.一旦__next__取不到值报错 for循环会自动捕获并处理
"""
异常捕获/处理
1. 异常
异常就是代码运行报错 行业俗语叫bug
代码运行中一旦遇到异常会直接结束整个程序的运行 我们在编写代码的过程中药尽可能避免
2. 异常分类
语法错误
不允许出现 一旦出现立刻改正 否则提桶跑路
逻辑错误
允许出现的 因为它一眼发现不了 代码运行之后才有可能会出现
3. 异常结构
错误位置
错误类型
错误详情
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗