py创建和使用字典 使用dict函数将序列(列表、元组)转换为字典 以及 字典的基本操作

第一课 创建和使用字典# 创建和使用字典# 我们以前讲过2种序列:1列表 2元组# 共同点:都是通过索引引用元素值# 不同点:列表是可读写的,元组是只读的names = ["Bill","Mike","John","Mary"]numbers = ["1234","4321","6789","6543"]print(numbers[names.index("Mike")])#4321 通过names中的Mike的索引 位置 来查找他的电话号码 numbers中的列表print(names[numbers.index("6543")])# Mary# 多个关联的数据分散到不同的 列表或者元组中,不太好维护 引入 字典 # 字典是一对 key和value {} 中间用: 表示phoneBook = {"Bill":"1234","Mike":"4321","John":"6645","Mary":"7753"}print(phoneBook)# {"Bill":"1234","Mike":"4321","John":"6645","Mary":"7753"}print(phoneBook["Mike"])# 4321----------------------------------------------- 第二课 使用dict函数将序列(列表、元组)转换为字典 // 通俗的理解为: 可以把列表和元组 通过 dict函数 转化为字典类型# 使用dict函数将序列转换为字典# 第一个是列表 第二个元素为元组 # 首先定义一个列表,列表中有多个元数,里面的元素可以为多个值,可以为列表也可以为元组 items = [['Bill',"4321"],("Mike","7891"),['John','4567']]d = dict(items)print(d)# {'Bill': '4321', 'Mike': '7891', 'John': '4567'}'''

也可以直接写成这样

items = [['Bill',"4321"],("Mike","7891"),['John','4567']]

#d = dict(items)

print(dict(items))

'''dict1 = dict(name="Bill", number=6543, age=34)# 这是把元组转化为字典print(dict1)# {'name': 'Bill', 'number': 6543, 'age': 34}# 需要先定义一个空的列表 然后 把输入的 input 追加起来,再通过dict函数进行转化  成字典 items = []whileTrue:    key = input("请输入Key:")ifkey ==":exit":break;    value = input("请输入value:")    keyValue = [key,value]    items.append(keyValue)# 追加d = dict(items)print(d)'''

请输入Key:majihui

请输入value:12345

请输入Key:zhaoshun

请输入value:33333

请输入Key:local

请输入value:china

请输入Key::exit

{'majihui': '12345', 'zhaoshun': '33333', 'local': 'china'}

'''-------------------------------------第三课 字典的基本操作# 字典的基本操作# 通过len函数获取字典的长度items = [1,2,3,4,5]# 这是一个列表print(len(items))# 5 输出列表的长度d = {"name":"Bill","age":43}# 这是一个字典print(len(d))# 2    输出字典的长度# 通过key获取和设置或修改字典中的值 print(d["name"])# Bill 获取字典中的值 d["name"] ="Mary"# 修改字典中的value的值 把原来名字为 Bill改成 Maryprint(d)# {'name': 'Mary', 'age': 43} #print(items[10])          # 当输出的索引超出了列表 就会报错 异常d["salary"] =5432# 在原来字典的基础上追加一个 print(d)# {'name': 'Mary', 'age': 43, 'salary': 5432}# 判断字段是否在列表中print(1initems)# Trueprint(10initems)# False#对于字典来说,他是直接找key是否在字典中存储,他不会找valueprint("name"ind)# Trueprint("location"ind)# False'''

列表和字典不同点小结:

1. key的类型,列表只能是数字(索引),字典的key可以是多种类型,如字符串、元组

2. 自动添加,引用列表元素,索引必须在范围内,否则抛出异常,字典的key如果不存在,会自动添加一个key-value对

3. 查找成员,列表使用in,直接查找值,字典使用in,查找key

查找效率,字典要高于列表和元组

'''IDEs = {'eclipse':    {'languages':['Java','Python','JavaScript','PHP'],'organization':'Eclipse基金会'},'visualstudio':    {'languages':['C#','C++','VB.NET'],'organization':'微软'},'webstorm':    {'languages':['JavaScript'],'organization':'JetBrains'}    }labels = {'languages':'支持的编程语言','organization':'所属机构'}IDE = input('请输入IDE的名字')findIDE = IDE.replace(' ','').lower()# 把输入的空格转化为空 并且 把输入的值转化为小写  choice = input('要查询的IDE支持的编程语言(lang)还是所属及机构(org)?')ifchoice =='lang': key ='languages'ifchoice =='org': key ='organization'iffindIDEinIDEs:    print("{} {}是{}.".format(IDE, labels[key],IDEs[findIDE][key]))'''

请输入IDE的名字eclipse

要查询的IDE支持的编程语言(lang)还是所属及机构(org)?lang

eclipse 支持的编程语言是['Java', 'Python', 'JavaScript', 'PHP'].

请输入IDE的名字WEBstorm

要查询的IDE支持的编程语言(lang)还是所属及机构(org)?org

WEBstorm 所属机构是JetBrains.

请输入IDE的名字eclipse      //输入的这个空面有空格

要查询的IDE支持的编程语言(lang)还是所属及机构(org)?org

eclipse  所属机构是Eclipse基金会.

'''

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,490评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,581评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,830评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,957评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,974评论 6 393
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,754评论 1 307
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,464评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,357评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,847评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,995评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,137评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,819评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,482评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,023评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,149评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,409评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,086评论 2 355

推荐阅读更多精彩内容