cmp() 方法用于比较两个列表的元素。
cmp()方法语法:
cmp(list1, list2)
参数:
list1 -- 比较的列表。list2 -- 比较的列表。
返回值:
如果比较的元素是同类型的,则比较其值,返回结果。
如果两个元素不是同一种类型,则检查它们是否是数字。
如果是数字,执行必要的数字强制类型转换,然后比较。如果有一方的元素是数字,则另一方的元素"大"(数字是"最小的")否则,通过类型名字的字母顺序进行比较。
如果有一个列表首先到达末尾,则另一个长一点的列表"大"。
如果我们用尽了两个列表的元素而且所 有元素都是相等的,那么结果就是个平局,就是说返回一个 0。
以下实例展示了 cmp()函数的使用方法:
#!/usr/bin/python list1, list2 = [123, 'xyz'], [456, 'abc'] print cmp(list1, list2); print cmp(list2, list1); list3 = list2 + [786]; print cmp(list2, list3)
Python3不在支持cmp方法:
可用方法有:
表达式减(-)法:
print((a>b)-(a<b)) #0,表示俩list相等
operator模块比较运算:
import operator a=[1, 2, 3, 4, 5 ] b=[1, 2, 3, 4, 5,6 ] c=[1, 2, 3, 4, 5 ] print(operator.lt(a,b)) #=> True ,小于< print(operator.gt(a,b)) #=> False ,大于> print(operator.eq(a,c)) #=> True ,等于== print(operator.ne(b,a)) #=> True ,不等于!= print(operator.le(a,b)) #=> True ,小于等于<= print(operator.ge(b,a)) #=> True ,大于等于>=
扩展学习:
两个列表,随机产生4个不相等的数,计算一下,相同位置上的元素相等的个数,用k1表示。
b列表中的元素在a列表中,但位置不相同,有多少个,用k2表示。
例如:
a=[0, 4, 7, 3]
b=[7, 1, 0, 3]
k1= 1 (只有第4个元素相等,k1=1)
k2= 2(两个列表中都有0和7,但位置不同,k2=2)
a=[] b=[] while(len(a)!=4): x=randint(0,9) if x not in a: a.append(x) while(len(b)!=4): x=randint(0,9) if x not in b: b.append(x) print(a) print(b) print() k1=k2=0 for i in range(4): if a[i]==b[i]: k1+=1 if b[i] in a and b[i]!=a[i]: k2+=1 print('k1=',k1) print('k2=',k2)
python,比较列表
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。