day07

痴心易碎 提交于 2019-11-29 19:12:54

字典内置方法

'''
字典内置方法  可变数据类型  (key为不可变数据类型)
dic = {'name':'slk', 'age':18, 'height':180}

按key取值/修改值
len()  #返回字典长度
in/not in  #成员运算
del dic[key]  #删除某个键值对
keys()/values()/items()  #取到字典的键/值/键值对
for循环
get(key, new_value)  #如果key in dic,返回dic[key];如果key not in dic,返回new_value,默认返回                      None
update(dic_new)  #在字典后增加字典(键值对)
fromkeys({key1,key2,key3},values)  #新建一个字典,但初始化的值都是一样的
setdefault(key, values1)  #当key in dic时,返回dic[key];当key not in dic时,返回values1,并增                           加新的键值对
copy()  #复制
pop(key)  #取出值,并删除键值对
popitem()  #不需要传值,默认删除最后一个键值对

'''

集合内置方法

'''
集合内置方法  可变数据类型  元素为不可变数据类型  乱序(数字不乱序)
主要作用: 去重


|  #并集
&  #交集
-  #差集
^  #交叉补集
add()  #增加一个元素
pop()  #随机删除
update(set1)  #在后面加入set1中的元素
clear()  #清空
remove(n)  #按值删除指定元素,如果没有该元素,则报错,因此推荐使用discard()
discard(n)  #按值删除指定元素,如果没有该元素,则返回None
set1.issubset(set2)  #判断set1是不是set2的子集
set1.issuperset(set2)  #判断set1是不是set2的父集
set1.difference_update(set2)  #去掉set1中set1和set2的交集
set1.isdisjoint(set2)  #判断set1,set2中是否有相同元素,返回布尔值

'''
数据类型分类 是否可变
可变 列表、字典、集合
不可变 整形、浮点型、字符串、元组

拷贝、浅拷贝、深拷贝

#拷贝、浅拷贝、深拷贝只针对可变数据类型
#拷贝:old中的任何数据类型变化,new都会随着变化
#浅拷贝:old中的可变数据类型变化,new变化;old中不可变数据类型变化,new不变
#深拷贝:old中的任何数据类型变化,new都不变
#内置方法中的copy()是浅拷贝
x = 10
y  x  #拷贝

猜年龄

while count1 <3:
    age_inp = input('请输入年龄: ').strip()
    if not age_inp.isdigit():
        print("沙雕,tmd输数字!")
        continue
    age_inp = int(age_inp)
    if age_inp > 18:
        print('dnmd猜大了!')
    elif age_inp < 18:
        print('dnmd猜小了')
    else:
        print('哎呦运气不错!')
        count1 = 9999
        while count2 < 2:
            print(prize)
            prize_choice = input('请输入想要的奖品序号: ').strip()
            if prize_choice not in prize_dict:
                print('沙雕,没这个东西!')
                continue
            if not prize_choice.isdigit():
                print('沙雕,输数字!')
                continue
            if prize_dict[prize_choice] in prize_list:
                prize_list[prize_dict[prize_choice]] += 1
            else:
                prize_list[prize_dict[prize_choice]] = 1
            print(f'获得{prize_dict[prize_choice]}')
            count2 += 1
        print(f'你获得的奖品:{prize_list}')
    count1 += 1
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!