python菜鸟教程-输出列表和字典

77 循环输出列表

s = ['man','woman','girl','boy','sister']
for i in range(len(s)):
    print(s[i])

man

woman

girl

boy

sister

78找到年龄最大的人,并输出。请找出程序中有什么问题。

#如果是列表:
l1 = [1,2,3,4]
print(max(l1))

#如果是字典法一:
dict1 = {"zhagn":18,"li":20,"wang":22}
value = dict1.values()
print(max(value))
法二:
person = {"li": 18, "wang": 50, "zhang": 20, "sun": 22}
m = 'li'
for key in person.keys():
    if person[m] < person[key]:
        m = key

print(f'{m}\t{person[m]}')

#字符串排序。
str1 = input('input string:')
str2 = input('input string:')
str3 = input('input string:')
print(str1, str2, str3)

if str1 > str2:
    str1, str2 = str2, str1
if str1 > str3:
    str1, str3 = str3, str1
if str2 > str3:
    str2, str3 = str3, str2

print('after being sorted.')
print(str1, str2, str3)

#字典法二输出

dict_keys(['zhagn', 'li', 'wang'])

dict_values([18, 20, 22])

22

字典的输出

#字典:{key:vlaue},key必须是字符串 value可以重复

#字典输出的时候,写输出key即可

person = {"li": 18, "wang": 50, "zhang": 20, "sun": 22}

for key in person.keys():

    print(person[key])

#循环的时候不能修改列表的元素个数

不要在遍历列表的时候对列表进行操作

不要在遍历列表的时候,对列表进行修改

for 循环其实是取的下标,要递增或递减

直接.remove导致后面元素下表前移

remove会改变list的index,所以不推荐遍历的时候修改列表

删掉会指针异常

错误的:

iplist = [11, 12, 13, 14, 15, 19, 85, 105, 148, 15]
for x in iplist:
    print('---',x)
    if x > 14:
        # print(x)
        iplist.remove(x)

print(iplist)

--- 11

--- 12

--- 13

--- 14

--- 15

--- 85

--- 148

[11, 12, 13, 14, 19, 105, 15]

错误原因:并没有把>14的所有元素都remove掉。

正确的:

iplist = [11, 12, 13, 14, 15, 19, 85, 105, 148, 15]
for x in iplist:
    print('---',x)

a = []
for i in range(len(iplist)):
    if iplist[i] > 14:
        a.append(iplist[i])
print(a)

--- 11

--- 12

--- 13

--- 14

--- 15

--- 19

--- 85

--- 105

--- 148

--- 15

[15, 19, 85, 105, 148, 15]

  • 17
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值