[Python]字典与列表的使用

1、列表嵌套字典
字典作为列表中的元素:

学生信息列表:[学生1,学生2,......]

学生信息字典:{姓名:爱好}

爱好列表: [爱好1,爱好2,爱好3]

总体的数据结构是[{学生1姓名:[爱好1,爱好2,爱好3]},{学生2姓名:[爱好1,爱好2,爱好3]},......]

student_info_dict = {}
student_info_list = []
hobby_list = []
while True:
    name = input("请输入学生姓名:")
    if name == " ":
        break
    else:
        for i in range(3):
            hobby = input("请输入第{}个爱好:".format(i+1))
            if hobby == " ":
                break
            else:
                hobby_list.append(hobby)
    student_info_dict = {name: hobby_list[:]}
    hobby_list.clear()
    student_info_list.append(student_info_dict)

print(student_info_list)
for i in student_info_list:
    print(i)

2、字典应用练习:

判断字符串中每个字符出现的次数, 利用字典中key的不可重复性来判断字符是否出现过,字符作为key,出现次数作为value

# abcdefce

str01 = "abcdefce"
str01_list = list(str01)
str_dict = {}
str_dict[str01_list[0]] = 1

for i in range(1,len(str01_list)):
    if str01_list[i] in str_dict.keys():
        str_dict[str01_list[i]] += 1
    else:
        str_dict[str01_list[i]] = 1

for key,value in str_dict.items():
    print(key,value)


#output 
a 1
b 1
c 2
d 1
e 2
f 1

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值