鱼C论坛

 找回密码
 立即注册
查看: 2087|回复: 2

025 作业不懂

[复制链接]
发表于 2021-2-16 11:07:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

                               
登录/注册后可看大图

这是题目要达到的效果,然后猜测马赛克部分
答案:
data = "1000,小甲鱼,男"
MyDict = {}
(MyDict['id'], MyDict['name'], MyDict['sex']) = data.split(',') #这句看不懂能解释一下嘛???

print("ID:   " + MyDict['id'])
print("Name: " + MyDict['name'])
print("Sex   " + MyDict['sex'])




                               
登录/注册后可看大图

要实现图中效果,这是我写的主干部分,麻烦看看有没有问题,好像达不到完成一个操作,再次出现“what do you what to do:”的操作输入
dict1={'xiaojiayu':'020-889'}
while num<=4 :
    num=int(input('what do you want to do:  '))

    if num==1:
        name1=input('your name: ')
        print(name1+':'+dict1[name1])

    if num==2:
        name2=input('new name: ')
        dict1[name2]=input('new phone: ')
        print(name2+':'+dict1[name2])

    if num==3:
        name=input('your name:')
        del dict1[name]

    if num==4:
        break
print('thank you!bye~')


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-2-16 11:19:52 | 显示全部楼层
data = "1000,小甲鱼,男"
        data.split(',')   这个语句把字符串 "1000,小甲鱼,男" 按 "," 字符进行分割,得到 "1000"、"小甲鱼"、"男" 三个字符串
(MyDict['id'], MyDict['name'], MyDict['sex']) = data.split(',')
        拆开来写,其实就是:
MyDict['id'] = data.split(',')[0] = "1000"
MyDict['name'] = data.split(',')[1] = "小甲鱼"
MyDict['sex'] = data.split(',')[2] = "男"
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2021-2-16 11:43:22 | 显示全部楼层
本帖最后由 qq1151985918 于 2021-2-16 12:21 编辑

还是蛮简单的,给你添了点儿自己对照一下,没啥新东西
dict1={'xiaojiayu':'020-889'}
helpText = '''
************************
1.Query the informations
2.Add new information
3.Delete someone
4.Quit
************************
'''
print(helpText)
while True :
    print(" ")
    num=input('what do you want to do:  ')
    #因为我们取的数字是操作指令,并不涉及运算 所以不必要强制转换为 int 整型
    #强制转换反而会在输入错误指令例如  abcd 之类会报错
    #我们在后边的 if 语句中将 1 2 3 4 分别改成 '1' '2' '3' '4'即可
    #如果指令并非 1234 输入错误会给予用户输入提示

    if num=='1':
        name1=input('your name: ')
        if name1 in dict1:
            print(name1+':'+dict1[name1])
            #只有当需要查询的 name 存在于 dict1 中才会查询的到,否则提示不存在
        else:
            print('There is nobody named',name1)
    
    elif num=='2':
        name2=input('new name: ')
        if name2 not in dict1:
            dict1[name2]=input('new phone: ')
            print(name2+':'+dict1[name2])
            #只有当需要添加的 name 不存在于 dict1 中才会添加,否则提示已存在
        else:
            print('This name is in the address book')
    
    elif num=='3':
        name=input('your name:')
        if name in dict1:
            del dict1[name]
            print('Done')
            #只有当需要删除的 name 存在于 dict1 中才会删除,否则提示不存在
        else:
            print('There is nobody named',name)
    
    elif num=='4':
        break
    else:
        print('Error \nPlease try again')
        #如果指令并非 1234 则报错并给予重新输入指令
    
print('thank you!bye~')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-16 14:04

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表