香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > python >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

详解Python中的内建函数,可迭代对象,迭代器


时间:2022-04-02 10:32 作者:admin610456


python/' target='_blank'>python中的内建函数和可迭代对象,迭代器

求值标识

    id() #标识id 返回对象的唯一标识,CPython返回内存地址 hash() #哈希, 返回对象的哈希值 len(s) -->返回一个集合类型的元素个数 range(start,stop[,step]) -->返回一个从start开始到stop结束,步长为step的可迭代对象。step默认为1

类型判断

    type() #返回对象的类型 isinstance(obj,class_or_tuple) —>True|False #判断obj是否属于某种类型或者元组中列出的某个类型

例如 isinstance(True,int) #判断True是否是int类型

    issubclass(cls,class_or_tuple)—>True|False #判断类型cls是否是某种类型的子类或元组中列出的某个类的子类

例如issubclass(bool,(int,str)) #判断bool是否是(int,str)其中一个的子类。

类型转换

* float() -->转换为浮点型
* int() -->转换为整形
* bin() -->转换为2进制
* hex() -->转换为16进制
* oct() -->转换为8进制
* bool() -->返回bool值
* list() --->返回列表
* tuple() --->返回元组
* dict() --->返回字典对象
* set() --->返回集合对象
* complex() --->虚数转换
* bytes() ---> 返回字节数组
* bytearry() --->返回可变的字节数组
* str() --->返回字符类型

字符转换

* chr(i)-->str #将整数转换成对应的字符
* ord(str)--->int #将字符转换成对应的整数
* repr()
* ascii()

输入输出

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

数学运算相关

    abs(x)–> 返回x的绝对值 x为数值 max()—> 返回最大值 min()—> 返回最小值 round(x)—>四舍五入取偶, 例如:round(-0.5)==0 pow(x,y)—>求 xy x^yxy divmod(x,y) —>返回x除以y的商和x除以y的余组成的二元组。等价于tuple(x//y,x%y) sum(iterable[,start])可迭代对象的所有数值元素求和

start为初始值,即从几开始累加

例如:

sum(range(5)) #求0~4所有数的和sum(range(5),3) # 等价于3+sum(range(5))

sorted(iterable[,key][,reverse])—>list #排序,返回一个新的列表,默认升序

revers 是反转,默认revers = False

key 解决待排序中不同类型之间的排序。key是函数(这个函数指定了数据的排序方式),这个函数就可以吧元素强制转化为你指定的类型,但转换后的结果只是用来做比较大小,不会改变最后生成的列表中的元素本身。

例如:

ls = [1,2,5,6,7,4,3,5,3]ls2 = sorted(ls) # 返回一个由ls内元素升序组成的列表ls3 = sorted(ls,reverse=True) # 返回一个由ls内元素降序组成的列表lss = [1,2,5,6,7,4,3,5,"3"]lss2 = sorted(lss,key=str)print(lss2)

迭代器惰性求值

reversed(seq) -->返回一个翻转元素的迭代器。惰性求值

例如:

ls = list("abcd")ls1 = reversed(ls)print(ls,ls1)next(ls1)

enumerate(seq,start=0)–>枚举生成器对象,返回索引数字和元素构成的二元组

seq 需要迭代的序列

start 表示索引开始的数字,默认是0

iter(iterable) #将一个可迭代对象封装成一个迭代器

next(iterator[,default]) #对一个迭代器取下一个元素。如果元素全部都取过了,再次next会抛出StopIteration异常

例如:

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

zip(*iterable)—>迭代器 #拉链函数

根据多个个可迭代对象,返回一个由对应下标元素组成的元组。迭代器可返回值的个数取决于多个可迭代对象的最小长度。
把多个可迭代对象合并在一起,返回一个迭代器。将每次从不同对象中渠道的元素合并成一个元组

常用例子:

list(zip(range(10,range(10),range(10))))dict(zip(range(10),range(10))) 

例如:

m = zip(range(9),range(6))for i in m:  print(i)print("------------")m = zip(range(3),range(6))for i in m:  print(i)

all(iterable)—>True|False #判断所有元素是否都等效于True,如果都是就返回True,否则返回False。如果集合没有一个元素,返回True

any(iterable)—>True|False #判断所有元素中是否有等效为True的元素,如果有,返回True.如果集合没有一个元素,返回False

可迭代对象

    能够通过迭代一次次返回不同元素的对象 可迭代,但是未必有序,未必可索引 可迭代对象有:list、tuple、string、bytes、bytearray、range、set、dict、生成器等 可使用成员操作符in、not in

迭代器

    特殊的对象,一定是可迭代对象,具备可迭代对象的特征 生成器对象,就是迭代器对象 创建和使用: 可以通过iter方法把一个可迭代对象封装成迭代器 可以通过next()方法获取迭代器中的元素。

附加

以上所述是小编给大家介绍的Python内建函数,可迭代对象,迭代器详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)