程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

【Python】8/17:字典与集合

发布于2019-10-28 14:49     阅读(1401)     评论(0)     点赞(0)     收藏(0)


参考文章:
http://c.biancheng.net/view/2212.html
https://www.runoob.com/python3/python3-set.html
https://www.cnblogs.com/suendanny/p/8597596.html


字典

  1. 字典是 Python 提供的一种常用的数据结构,它用于存放具有映射关系的数据。
  2. 字典是 Python 唯一的一个 映射类型,字符串、元组、列表属于序列类型。

在这里插入图片描述字典的每个键值(key=>value)对用冒号( : )分割,每个对之间用逗号( , )分割,整个字典包括在花括号( { } )中 ,格式如下所示:

 d = {key1 : value1, key2 : value2 }
  • 1

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

brand = ['李宁', '耐克', '阿迪达斯']
slogan = ['一切皆有可能', 'Just do it', 'Impossible is nothing']
print('耐克的口号是:', slogan[brand.index('耐克')])  
# 耐克的口号是: Just do it

dict1 = {'李宁': '一切皆有可能', '耐克': 'Just do it', '阿迪达斯': 'Impossible is nothing'}
print('耐克的口号是:', dict1['耐克'])  
# 耐克的口号是: Just do it
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

需要指出的是,元组可以作为 dict 的 key,但列表不能作为元组的 key。这是由于 dict 要求 key 必须是不可变类型,但列表是可变类型,因此列表不能作为元组的 key。

基本用法

scores = {'语文': 89, '数学': 92, '英语': 93}
  • 1
  • 添加
    # 对不存在的key赋值,就是增加key-value对
    scores['数学'] = 93
    scores[92] = 5.7
    print(scores) # {'语文': 89, '数学': 93, 92: 5.7}
  • 1
  • 2
  • 3
  • 4
  • 删除
    # 使用del语句删除key-value对
    del scores['语文']
    del scores['数学']
    print(scores) # {92: 5.7}
  • 1
  • 2
  • 3
  • 4
  • 修改
# 对存在的key-value对赋值,改变key-value对
scores['语文'] = 94
scores['数学'] = 88
print(scores) # {'语文': 94, '数学': 88, '英语': 93}
  • 1
  • 2
  • 3
  • 4
  • 判断是否包含
    # 判断scores是否包含名为'英语'的key
    print('英语' in scores) # True
    # 判断scores是否包含名为'PORSCHE'的key
    print('PORSCHE' in score) # False
    print('LAMBORGHINI' not in cars) # True
  • 1
  • 2
  • 3
  • 4
  • 5

列表不允许对不存在的索引赋值,但字典则允许直接对不存在的 key 赋值。

常用方法

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

集合

与dict类似,set也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。

集合特性:
1、元素必须是不可变类型(数字,字符串,元组),必须可ha
2、不同元素组成,如果相同就会自动去重,只保留一个。
3、集合是无序的
4、集合是可变类型

创建集合

  1. 定义可变集合
>>> set_test = set('hello')
>>> set_test
{'h', 'l', 'e', 'o'}
  • 1
  • 2
  • 3
  1. 定义不可变集合
>>> n_set_test = frozenset(set_test)
>>> n_set_test
frozenset({'h', 'l', 'e', 'o'})
  • 1
  • 2
  • 3

集合运算

集合之间也可进行数学集合运算(例如:并集、交集等),可用相应的操作符或方法来实现。
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述



所属网站分类: 技术文章 > 博客

作者:磨子舒

链接:https://www.pythonheidong.com/blog/article/146978/8998050506f73edfa52f/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

0 0
收藏该文
已收藏

评论内容:(最多支持255个字符)