python 字典与元组

Posted on 2019-06-02 15:40  S-skill  阅读(631)  评论(0)    收藏  举报

字典
  1. 增删改查
    1. dict[不存在的key] = value, setdefault()
    2. pop(key), del dict[key], popitem(), clear()
    3.dict[存在的key] = 新值, d1.update(d2) 把d2的k-v更新到d1中
    4. get(key,默认值), setdefault(), dict[key]

  2. tuple 元组
    1. 不能修改的是元组内部第一层元素, 只读列表. 有索引和切片
    2. 不可变的是它内部的子元素, 如果子元素是列表, 列表中的元素是可以变的,



1. 增
# 1. 增加
dic = {'k1':'v1','k2':'v2'}
dic['k3'] = 'v3'
print(dic)
# 输出: {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'}

dic = {'k1':'v1','k2':'v2'}
dic.setdefault('LOL','剑豪')
print(dic)
# 输出: {'k1': 'v1', 'k2': 'v2', 'LOL': '剑豪'}


2. 删
# 2. 删除
dic = {'k1':'v1','k2':'v2','王者':'李白'}
ret = dic.pop('k1')   # 删除key值
print(dic)
# 输出: {'k2': 'v2', '王者': '李白'}

print(ret)  # 返回value值
# 输出: v1

dic = {'k1':'v1','k2':'v2','王者':'李白'}
del dic['k2']
print(dic)
# 输出: {'k1': 'v1', '王者': '李白'}

dic = {'k1':'v1','k2':'v2','王者':'李白'}
dic.popitem()   # 删除最后一个
print(dic)
# 输出: {'k1': 'v1', 'k2': 'v2'}

dic = {'k1':'v1','k2':'v2','王者':'李白'}
dic.clear() # 删除全部
print(dic)
# 输出: {}

 

3.  改

# 3. 改值
dic = {'CF':'黑龙','天天酷跑':'小单车','超能少年':'魔法少年'}
dic['CF'] = '雷神'
print(dic)
# 输出: {'CF': '雷神', '天天酷跑': '小单车', '超能少年': '魔法少年'}

dic = {'CF':'黑龙','天天酷跑':'小单车','超能少年':'魔法少年'}
dic2 = {'天天酷跑':'小绵羊','西游记':'齐天大圣'}
dic.update(dic2)   # 把dic2的东西加入dic中,有相同的key值,就把key值的value值进行改变,改成dic2的值
print(dic)
# 输出: {'CF': '黑龙', '天天酷跑': '小绵羊', '超能少年': '魔法少年', '西游记': '齐天大圣'}

 

4.   查

# 4. 查询
dic = {'刘备':'刘灿','张飞':'张三','关羽':'青龙偃月刀','赵子龙':'赵云'}
check_dic = dic.get('张飞')
print(check_dic)
# 输出: 张三
check_dic = dic.get('NB')     # 查询key值,没有这个key值,返回None
print(check_dic)
# 输出: None
check_dic = dic.get('NB','李四')  # 查询key值,没有这个key值,给出一个默认值,
print(check_dic)
# 输出: 李四

dic = {'刘备':'刘灿','张飞':'张三','关羽':'青龙偃月刀','赵子龙':'赵云'}
check_dic = dic.setdefault('刘备')
print(check_dic)
# 输出: 刘灿

dic = {'刘备':'刘灿','张飞':'张三','关羽':'青龙偃月刀','赵子龙':'赵云'}
check_dic = dic['关羽']
print(check_dic)
# 输出: 青龙偃月刀

 


元组  tuple
tu = (1,)     # 元组的话, 需要添加一个逗号
print(type(tu))
# 输出: <class 'tuple'>

tu = (66,'小甲鱼','demo','奥特曼','凯传',[3,53,'弹珠传说','init'])
tu[2] = 'friend'
print(tu)   # 不能修改,会报错
tu[5].append('追风鸟号')   # # 元组没有变, 变的是列表中的内容
print(tu)
# 输出: (66, '小甲鱼', 'demo', '奥特曼', '凯传', [3, 53, '弹珠传说', 'init', '追风鸟号'])
modify_tu = tu[5][3].capitalize()   # 首字母大写
print(modify_tu)    # 列表中的元素可以变
# 输出: Init
tu[5].append('锁风金鹏')
print(tu)   # 在列表中增加
# 输出: (66, '小甲鱼', 'demo', '奥特曼', '凯传', [3, 53, '弹珠传说', 'init', '锁风金鹏'])

 

 

 
 

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3