python中序列的属性怎样实现-创新互联
小编给大家分享一下python中序列的属性怎样实现,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
在双阳等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站设计 网站设计制作专业公司,公司网站建设,企业网站建设,高端网站设计,营销型网站建设,外贸网站建设,双阳网站建设费用合理。序列较大值:max
序列最小值:min
序列的和: sum
序列长度: len
基本用法:向这四个函数中传入序列,可以得到对应属性。
import random random.seed(21) seq = [random.randint(0, 100) for i in range(10)] print(seq) # [21, 53, 88, 53, 81, 36, 61, 27, 60, 65] print(max(seq)) # 88 print(min(seq)) # 21 print(sum(seq)) # 545 print(len(seq)) # 10
作为内置函数,可以直接传入生成器(不需要括号)作为参数:
import random random.seed(21) num = max(random.randint(0, 100) for i in range(10)) print(num) # 88
可传入 key 参数,作为比较大小的依据,相当于把序列中每一个元素 item 先传入函数 key 中,将函数返回的数值作为判断对象大小的依据。
def foo(x): return 1. / x max(seq, key = foo) # 21
对于我们自定义的类型,必须实现特殊方法,才能进行 len 等操作。
len 代表:len 操作,eq 代表:= 操作,lt 代表 < 操作。
class foo: def __init__(self, num, seq): self.num = num self.seq = seq def __len__(self): return len(self.seq) def __eq__(self, other): return self.num == other.num def __lt__(self, other): return self.num < other.num >>> f1 = foo(18, [1, 4, 6]) >>> f2 = foo(21, [1, 7, 9, 10]) >>> f1 < f2 True >>> f1 > f2 False >>> f1 == f2 False >>> f3 = foo(18, [9, 9, 0, 7]) >>> f1 == f3 True >>> len(f1) 3 >>> len(f2) 4
以上是“python中序列的属性怎样实现”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!
名称栏目:python中序列的属性怎样实现-创新互联
链接URL:http://hbruida.cn/article/jdhsh.html