python内建函数 迭代器

本文深入解析Python的内建函数,包括标识ID、哈希、类型转换、数学运算、迭代器、排序等功能,帮助读者掌握Python编程核心技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python部分内建函数
标识 id:
返回对象的唯一标识
哈希 hash()
返回一个对象的哈希值(散列值)
类型 type()
返回对象的类型
类型转换:
float() 浮点数
int() 整数
bin() 二进制
hex() 十六进制
oct() 八进制
bool() 布尔
list() 列表
tuple() 元组
dict() 字典
set() 集合
complex()
bytes()
bytearray()

输入 input([prompt])
接收用户输入,返回一个字符串
打印 print(*objects,sep=’’,end=’\n’,file=sys.stdout,flush=False)
打印输出,默认使用空格分割 换行结尾,输出到控制台

对象长度 len(s)
返回一个集合类型的元素个数
isinstance(obj,class_or_tuple)
判断对象obj是否属于某种类型或者元组中列出的某个类型
isinstance(True,int)
issubclass(cls,class_or_tople)
判断类型cls是否是某种类型的子类或元组中列出的某个类型的子类
issubclass(bool,int)

绝对值abs(x) x为数值
最大值max() 最小值min()
返回可迭代对象中最大或最小值
返回多个参数中最大或最小值

round(x) 四舍六入五取偶,round(-0.5)
pow(x,y) 等价于x**y
range(stop)
从0开始的stop-1的可迭代对象;range(start,stop[,step])从start开始到stop-1结束步长为step的可迭代对象

divmod(x,y)等价于 tuple(x//y,x%y)
sum(iterable[,start])将可迭代对象的所有元素求和
sum(range(1,100,2))

chr(i)给一个一定范围的整数返回对应的字符
chr(97) chr(20013)
ord©返回字符对应的整数,返回值是Unicode ord(‘a’) ord(‘中’)
str()
repr()
ascii()

sorted(iterable[,key][,reverse])排序
立即返回一个新的列表,默认升序
reverse是反转

sorted([1,2,5])
sorted([1,2,5],revers=True)
sorted({‘c’;1,‘b’;2,‘a’:1})

翻转reversed(seq)
返回一个反转元素的迭代器

list(reversed(“13579”))

for x in reversed([‘c’,‘b’,‘a’]):
print(x) a b c

枚举 enumerate(seq,start=0)
迭代一个序列,返回索引数字和元素构成的二元组
start表示索引开始的数字,默认是0

for x in enumerate([2,4,6,8]):
print(x)

for x in enumerate(“abcde”):
print(x,end=" ")

迭代器和取元素 iter(iterable) next(iterator[,default])
iter将一个可迭代对象封装成一个迭代器
next对一个迭代器取下一个元素.如果全部元素都取过了,再次next会抛出StopItertion

it = iter(range(5))
next(it)

it = reversed([1,3,5])
next(it)

拉链函数zip(iterables)
   像拉链一样,把多个可迭代对象合并在一起,返回一个迭代器
   将每次从不同对象中取到的元素合并成一个元组

list(zip(range(10),range(10)))
list(zip(range(10),(range(6),(range(10),(range(10)))

all(iterable)
可迭代对象所有元素都要等效为True,或空的可迭代对象,all函数返回True
一旦可迭代对象有一个元素等效为False,all函数返回False

any(iterable)
可迭代对象任意一个元素都要等效为True,any函数返回True
空可迭代对象或所有元素都等效为False,any函数返回False

lst = [True,{1},[2,3],5.1,‘abc’]
print(all(lst),any(lst))

可迭代对象
能够通过迭代一次次返回不同的元素的对象
   所谓相同,不是指值是否相同,而是元素在容器中是否是同一个,假如列表中元素是可以重复的,[‘a’,‘a’],虽然这个列表有2个元素,值一样,但是两个’a’是不同的元素,因为有不同的索引
   可以迭代,但是未必有序,未必可索引
   可迭代对象有:list tuple string bytes bytearray range对象 set dict 生成器 迭代器等
   可以使用成员操作符in    not in,in本质上对于线性结构就是在遍历对象,非线性结构求hash

迭代器
   特殊的对象,一定是可迭代对象,具备可迭代对象的特征
   通过iter方法把一个可迭代对象封装成迭代器
   通过next方法,就是迭代器对象
   生成器对象,就是迭代器对象

for x in iter(range(10)):
print(x)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值