常见内置函数与迭代器

lambda 形参:返回值

重要内置函数

map  映射
max/min
reduce

今日内容概要

  • 重要内置函数
  • 常见内置函数
  • 可迭代对象
  • 迭代器对象
  • for循环内部原理
  • 异常处理

今日内容详细

重要内置函数

zip 将两个列表按照顺序一一组成元组的形式
l1 = [11, 22, 33, 44, 55]
l2 = ['jason','tony', 'oscar', 'jerry', 'tom']
res = zip(l1, l2)
print(list(res))  # [(11, 'jason'), (22, 'tony'), (33, 'oscar'), (44, 'jerry'), (55, 'tom')]
filter  比较值然后把列表大于这个数的值取出来
l1 = [11, 22, 33, 44, 55, 66, 77, 88]
res = filter(lambda x: x > 40, l1)
print(list(res))
sorted  # 修改升序
l1 = [21, 12, 53, 64, 76, 32, 11, 22]
res = sorted(l1)
print(res)  # 默认升序

常见内置函数

1.abs()  绝对值
print(abs(-100))  # 100
print(abs(100))  # 100
2.all() 所有数据值对应的布尔值为Ture结果才是Ture,否则返回False
print(all([1, 2, 3, 5, 0]))  # Fals 有0
print(all([2,3,4,5,6]))  # True
3.any() 所有数据值对应的布尔值有一个为True结果就是True,否则为False
print(any([0, 1, 3, 5]))  # True
4.bin() 二进制 oct() 八进制  hex()十六进制  int
5.bytes() 转成成bytes类型
s1 = '今天周五,内容也很简单'
print(bytes(s1, 'utf8'))
6.callable() 判断名字是否可以加括号调用
name = 'jason'
print(callable(name))  # False
def index():pass


print(callable(index))  # True
7.chr()  odr() 基于ASCII码表做的数字与字母的转化
print(chr(65))  # 转数字
print(ord('a'))  # 转字母
8.dir() 返回值括号内对象能够调用的名字
9.divmod() 元组第一个数据为整除数,第二个是余数
res = divmod(100, 3)
print(res)  # (33, 1)
"""
总数据     每页展示的数据     总页码
# 100         10              10
99          10              10
# 101         10              11
# """
page_unm, more = divmod(9999, 20)
if more:  # 如果more也就是余数不为0
    page_unm += 1  # 那么页面+1
print(page_unm)  # 500
10.enumerate()  枚举法
11.eval() exec() 能够识别字符串中的python并执行
s1 = print('哈哈哈')
s2 = 'for i in range(100):print(i)'
eval(s2)  # 只能识别简单的python代码 具有逻辑性的都不行
exec(s2)  # 可以识别具有一定逻辑性的python代码
12.hash()  哈希加密
print(hash('jason'))
13 id()内存地址 input()输入 isinstance()
14.map()  min() 最大最小
15.open() 打开文件
16.pow()  幂指数(次方)
print(pow(2, 2))  # 4
print(pow(2, 6))  # 64
17.range()
18.round() 四舍五入
19.sum()  求和
print(sum([11, 22, 33, 44, 55, 66]))
20.zip()

可迭代对象

1.可迭代对象
	对象内置有__iter__方法的都称为可迭代对象
    """
    1.内置方法  通过点的方式能够调用的方法
	2.__iter__  双下iter方法
    """
2.可迭代对象的范围
	不是可迭代对象	
    	int float bool 函数对象
3.可迭代的含义
	"""
	迭代:更新换代(每次更新都必须依赖上一次的结果)
	比如g:手机app更新
	"""
    可迭代在python中可以理解为是否支持for循环

迭代器对象

1.迭代器对象
	是右可迭代对象调用__inter__方法产生的
    迭代器对象判断的本质是看是否有内置有__inter__和__next__
2.迭代器对象的作用
	提供了一种不依赖于索引取值的方式
   正因为有迭代器的存在,我们的字典,集合才能够被for循环
3.迭代器对象实操
	s1 = 'hello'
 	res = s1__inter__()
 	print(res.__next__)
 	一旦__next__取不到值  会直接报错
4.注意事项
	可迭代对象调用__inter__会成为迭代器对象,迭代器对象如果还调用__inter__不会有任何变化,还是迭代器对象本身

for循环的本质

for 变量名 in 可迭代对象:
    循环体代码
"""
1.先将in后面的数据调用__iter__转变成迭代器对象
2.依次让迭代器对象调用__next__取值
3.一旦__next__取不到值报错 for循环会自动捕获并处理
"""

异常捕获/处理

1.异常
	异常就是代码运行报错,行业俗语称之为bug
    代码运行中一旦遇到异常会直接结束整个程序的运行,我们在编写代码的过程中药尽可能避免
2.异常分类
	语法错误
	逻辑错误
3.异常结构
	错误位置
	错误类型
	错误详情
posted @   雪语  阅读(42)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示