python初学 列表之max函数学习

#max(list) 用于返回列表元素中的最大值

当列表中种的元素都是字符串时,则比较第一个字符的ASCLL码
当列表中的元素都是数字的时候,则比较数字大小
当列表中的元素都是元组的时候,则会按照元素里面元组的第一个元素的排列顺序,输出最大值,如果第一个元素相同,则会比较第二个元素
如果列表中的元素类型不同,则无法比较
列表中的元素为字典时也无法比较
原理

lst = [1,3,5,2,8,6]
     ma = lst[0] # 假设第0项就是最大值
     mi = lst[0]
     for el in lst:
        if el > ma:
            ma = el
        if el < mi:
            mi = el
print("最小值为: %d" % mi)
print("最大值为: %d" % ma)

#比较字符串

list1 = ["我想","喜欢",'你呀']
print("我想的地址是",id("我想"))
print("喜欢的地址是",id('喜欢'))
print("你呀的地址是",id("你呀"))
#ord函数返回对应的ASCII码或者是Unicode码
print(ord('我'))
print(ord('喜'))
print(ord('你'))
print(max(list1))
list2 = ['我','喜','欢','你']
print(max(list2))
list3 = ['我','爱','python']
print(max(list3))

输出结果是
我想的地址是 1565506026160
喜欢的地址是 1565506025968
你呀的地址是 1565506026448
25105
21916
20320
我想

#比较混合类型

list4 = [1,{0:123,1:894}]
 print(max(list4))
 TypeError: '>' not supported between instances of 'dict' and 'int'

这里会出现错误,意思就是字典和整数数据无法比较

#比较元组

a=[('a',1),('A',1)]
print(ord('a'))
print(ord('A'))
print(max(a))

结果输出:
97
65
(‘a’, 1)

#比较字典

list5 = [{1:100,2:300}]
print(max(list5))
list4 = [{1:100,2:300},{5:800,9:500}]
print(max(list4))
TypeError: '>' not supported between instances of 'dict' and 'dict'

结果输出:
{1: 100, 2: 300}
list4会进行报错

#比较列表

list6 = [[1,2,3,4],[1231,'abc']]
print(max(list6))
list6 = [[1,2,3,4],[0,'abc']]
print(max(list6))
list6 = [[1,2,3,4],['a','abc']]
print(max(list6))
#第三个list6会出现错误,因为字符串与1无法进行比较

结果输出为:
[1231, ‘abc’]
[1, 2, 3, 4]

min函数与此大致相同

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值