python的字典 --练习题

练习一

数字重复统计:
1). 随机生成1000个整数;
2). 数字的范围[20, 100],
3). 升序输出所有不同的数字及其每个数字重复的次数;

import random
all_num = []

for item in range(1000):
    all_num.append(random.randint(20,100))

# 对生成好的1000个数进行排序,然后添加到字典中
sorted_num = sorted(all_num)

num_dict ={}

for num in sorted_num:
    if num in num_dict:
        num_dict[num] += 1

    else:
        num_dict[num] = 1

print(num_dict)

在这里插入图片描述结果
在这里插入图片描述

练习二

重复的单词: 此处认为单词之间以空格为分隔符, 并且不包含,和.;
# 1. 用户输入一句英文句子;
# 2. 打印出每个单词及其重复的次数;

s = input('s:')

# 1.把每个单词分割处理
s_li = s.split()
word_dict ={}
for item in s_li:
    if item not in word_dict:
        word_dict[item] = 1
    else:
        word_dict[item] += 1
print(word_dict)

在这里插入图片描述

结果
在这里插入图片描述

练习三
  1. 随机生成100个卡号;
    #卡号以6102009开头, 后面3位依次是 (001, 002, 003, 100),
  2. 生成关于银行卡号的字典,
    #默认每个卡号的初始密码为"redhat";
  3. 输出卡号和密码信息,
    #格式如下:
    卡号 密码
    6102009001 000000
card_ids = []

# 生成100个卡号
for i in range(100):
    # %.3d:代表整数的占位
    s = '6102009%.3d' %(i+1)
    card_ids.append(s)

card_ids_dict = {}.fromkeys(card_ids,'redhat')
print(card_ids_dict)
print('卡号\t\t\t\t\t密码')
for key in card_ids_dict:
    print('%s\t\t\t%s' %(key,card_ids_dict[key]))

在这里插入图片描述结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值