大连理工大学Python选修课作业训练4

 1.

题目:随机生成姓名并找到次数最多的 

内容:请使用random函数从familyNames中随机选出一个姓氏,从givenNames中随机选出一个名字,这样就可以拼成一个姓名。

随机10000个名字,用列表存储起来,然后从列表中找出并输出次数最多的名字和次数(如果有多个名字次数一样,则输出多个)。

familyNames = [ "赵", "钱", "孙", "李", "周", "吴", "郑", "王", "冯", "陈",
                            "褚", "卫", "蒋", "沈", "韩", "杨", "朱", "秦", "尤", "许",
                            "何", "吕", "施", "张", "孔", "曹", "严", "华", "金", "魏",
                            "陶", "姜", "戚", "谢", "邹", "喻", "柏", "水", "窦", "章",
                            "云", "苏", "潘", "葛", "奚", "范", "彭", "郎", "鲁", "韦",
                            "昌", "马", "苗", "凤", "花", "方", "俞", "任", "袁", "柳",
                            "酆", "鲍", "史", "唐", "费", "廉", "岑", "薛", "雷", "贺",
                            "倪", "汤", "滕", "殷", "罗", "毕", "郝", "邬", "安", "常",
                            "乐", "于", "时", "傅", "皮", "卞", "齐", "康", "伍", "余",
                            "元", "卜", "顾", "孟", "平", "黄", "和", "穆", "萧", "尹"]


givenNames  = ["子璇", "国栋", "瑞堂", "国贤", "贺祥", "晨涛","昊轩", "易轩",
                           "益辰", "益帆", "益冉", "瑾春", "瑾昆", "春齐", "文昊","东东",
                           "雄霖", "浩晨", "熙涵", "溶溶", "冰枫", "欣欣", "宜豪", "欣慧",
                           "建政","美欣", "淑慧", "文轩", "文杰", "欣源", "忠林", "榕润",
                           "欣汝", "慧嘉", "新建","建林", "亦菲", "冰洁", "佳欣", "涵涵",
                           "禹辰", "淳美", "泽惠", "伟洋", "涵越", "润丽", "淑华", "晶莹",
                           "凌晶", "苒溪", "雨涵", "嘉怡", "佳毅","子辰", "佳琪", "紫轩",
                           "瑞辰", "昕蕊", "萌", "明远", "欣宜", "泽远", "欣怡","佳怡",
                           "佳惠", "晨茜", "晨璐", "运昊", "汝鑫", "淑君", "晶滢", "润莎",
                            "榕汕","佳钰", "佳玉", "晓庆", "一鸣", "语晨", "添池", "添昊",
                           "雨泽", "雅晗", "雅涵","清妍", "诗悦", "嘉乐", "晨涵", "天赫",
                           "玥傲", "佳昊", "天昊", "萌萌", "若萌"]
import random
name = list()
while len(name)<10000:
    name.append( random.choice(familyNames) + random.choice(givenNames) )

#统计1  maxlabel = max(name,key=name.count)   print(maxlabel)
# 直接统计2  print(max(name, key=name.count))
print(f"出现次数最多的元素是:{max(name, key=name.count)} ,总出现次数:{name.count(max(name, key=name.count))}")

参考答案

 

2.题目:字典知识点练习

province_dict = {"辽宁省":"沈阳","吉林省":"长春","黑龙江省":"哈尔滨","安徽省":"合肥"}



# 通过访问province_dict打印出吉林省的省会城市



print(province_dict["吉林省"])

# 请将辽宁省省会修改为“大沈阳”



province_dict["辽宁省"]="大沈阳"

# 增加山东省省会济南到province_dict中



province_dict["山东省"]="济南"

# 请删除安徽省及省会信息

del province_dict["安徽省"]



# 用for循环输出provice_dict中所有省份和省会城市,每个省份和省会一行,中间用冒号分割

for key in province_dict:

    print(key,province_dict[key])



# 请用户输入一个省份名称,判断是否在province_dict中

# 如果用户输入的不在字典中,提示“暂未收录该省份的省会信息”

# 如果在字典中,则输出“xx省的省会是xx”

# 需要支持用户输入“辽宁”不带“省”字的情况

province = input("请输入省份:")

if "省" not in province:

   province+="省"

if province in province_dict:

    print("{0}的省会是{1}".format(province,province_dict[province]))

else:

    print("暂未收录该省份的省会信息")

word_count = {"hello":1,"world":0,"dalian":5,"liaoning":10,"python":6}

# 请输出hello出现的次数

print(word_count["hello"])



# 请对hello出现的次数增加1



word_count["hello"]+=1



# 请增加like出现的次数,设置初始值为1

word_count["like"]=1



# 请输出所有单词出现的次数,每行一个单词,单词和次数用冒号分隔

for key in word_count:

    print(key,word_count[key])

 

 

 

3.3. (简答题) 猜数字游戏:计算机随机生成一个[1,100]之间的数字由人来猜,计算机根据人猜的数字提示:大一点/小一点/猜对了,最终将猜数字的次数输出,如果猜的次数超过了 7 次,提示:你的智商余额明显不足!

import random
x = random.randint(1, 100)
count=0
guess = int(input("请输入您的答案:"))
while 1:
        
        if guess > x:
            count+=1
            if count<=6:
                print("小一点")
                guess = int(input("请输入您的答案:"))
            else:
                print("智商余额不足")
                break
        elif guess < x:
            count+=1
            if count<=6:
                print("大一点")
                guess = int(input("请输入您的答案:"))
            else:
                print("智商余额不足")
                break
        else:
            count+=1
            print("猜对了\n你总共猜了{0}次".format(count))
            break

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值