1、字典中键-值为一对,keys()返回一个列表,包含字典中所有键,values()返回所有值

favorite_languages ={
'jack':"python",
'alex':"c",
'james':"ruby"
}
for key in favorite_languages.keys():
print(key)
print(list(favorite_languages.keys()))
for value in favorite_languages.values():
print(value)
print(list(favorite_languages.values()))

2、给字典添加键-值对

favorite_languages ={
'jack':"python",
'alex':"c",
'james':"ruby"
}
favorite_languages['paul']='c++'
favorite_languages['charlie']='c'
print('favorite_language is :'+str(favorite_languages['charlie']))
print(favorite_languages['paul'])
print("Paul's favorite_language is %s."%favorite_languages['paul'])

3、items()返回一个键—值对列表;

favorite_languages ={
'jack':"python",
'alex':"c",
'james':"ruby"
}
for k,v in favorite_languages.items():
print('\nK:'+k)
print('V:'+v)

4、keys()--键列表的应用

#遍历键列表
for key in favorite_languages.keys():
print('\n'+key.title())
#检查一个朋友是否在键列表中
friends=['jack','james']
for name in favorite_languages.keys():
print('\n'+name.title())
if name in friends:
print('Hi '+name.title()+',I see your favorite language is '+
favorite_languages[name].title() + '!')
else:
print(name.title(),',please take our poll.')
#按顺序遍历字典中所有键
for name in sorted(favorite_languages.keys()):
print(name.title())

5、set()集合的方式输出列表,集合中每个元素必须独一无二

#values()值列表应用
favorite_languages ={
'jack':"python",
'alex':"c",
'james':"c"
}
languages=[]
for language in set(favorite_languages.values()):
print(language.title())
languages.append(language)
print(languages)

6、嵌套:列表中嵌套字典

#将两个字典循环插入空列表30次
resumes=[]
for resume_number in range(30):
new_resume1={'name':'jack','age':'','living_city':'beijing'}
new_resume2={'name':'alex','age':'','living_city':'shanghai'}
resumes.append(new_resume1)
resumes.append(new_resume2)
for resume in resumes[:3]:
print(resume)#依次输出前三个字典
if resume['name'] == 'jack':#按条件修改字典中的值
resume['name']='james'
resume['age']=''
resume['living_city']='zhengzhou'
elif resume['name'] == 'alex':
resume['name']='paul'
resume['age']=''
resume['living_city']='shenzhen'
print(resume)#依次输出修改后的前三个字典
print('The number of new resumes is %s.'%str(len(resumes)))#输出列表长度

7、字典中嵌套列表

#字典的值为列表
favorite_flowers={
'jack':['rose','lily','peony'],
'alex':'lily',
'james':['lily','peony','tulip']
}
for name,flowers in favorite_flowers.items():#遍历字典
print('\n',len(flowers))#输出值的长度
if len(flowers) > 1:#如果长度大于1,就为列表
print(name.title()+"'s favorite flower are:")
for flower in flowers:
print('\t',flower.title())
else: #否则就是单个字符串
print(name.title()+"'s favorite flower is:")
print('\t',flowers[0].title())

8、字典中嵌套字典

#字典的值为字典
people={
'eric':{'name':'eric','age':'','location':'beijing'},
'james':{'name':'james','age':'','location':'shanghai'}
}
for person,info in people.items():#遍历字典
print('\nUsername:',person) #依次输出键
for k,v in info.items(): #遍历嵌套字典的键值对
print('%s:%s'%(k,v))
print('------------')

9、setdefault()--括号内的值可以是key活着key,value,如果字典中有key,输出对应的值,如果括号内的key不存在,就给字典添加一个key,value值默认为None;

   这个函数尽量不要用,容易出错

user_info = {
'jack':'c',
'alex':'c++'
}
print(user_info.setdefault('jack'))
print(user_info.setdefault('james','python'))
print(user_info)

10、fromkeys()只是借用一个字典的格式来生成一个新的字典,不改变借用字典,这个函数尽量不要用

  popitem() 随机删除字典中的键-值对;尽量不要用

user_info = {
'jack':'c',
'alex':'c++'
}
print(user_info.fromkeys([1,2,3,4],'aaaa'))
print(user_info)
print(user_info.popitem())#随机删除字典中的键-值对;尽量不要用
print(user_info)

11、update()根据新的字典更新老的字典,已存在的键值对,根据第二个字典改变,没有的就添加进来,一切以第二个为准

user_info = {
'jack':'c',
'alex':'c++'
}
user_info2 = {
'alex':'python',
'paul':'java'
}
user_info.update(user_info2)#update()根据新的字典更新老的字典
print(user_info)

12、dic.get(key)函数获取字典的value,如果key不存在,就返回None,不会报错,如果直接用dic[key]=value,如果字典为空,就会报错。

dic = {}
print(dic.get("key"))
#None

Python基础知识:字典的更多相关文章

  1. Python基础知识---字典

    现在在实习期间,好久没用Python了,今天在做Java项目时用的HashMap让我联想到了Python中的字典,就写一些Python字典的知识吧,复习复习. 字典:  key --> valu ...

  2. 1.13 Python基础知识 - 字典和集合

    一.字典 字典是一组键-值对的数据结构.每个键对应一个值.在字典中,键不能重复.根据键可以查询到值.字典是键和值的映射关系 字典的定义: 字典通过花括号中用逗号分隔的元素(键-值.键-值对使用冒号分隔 ...

  3. Python基础知识(五)------字典

    Python基础知识(四)------字典 字典 一丶什么是字典 ​ dict关键字 , 以 {} 表示, 以key:value形式保存数据 ,每个逗号分隔 ​ 键: 必须是可哈希,(不可变的数据类型 ...

  4. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  5. python 基础知识(一)

    python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...

  6. python 爬虫与数据可视化--python基础知识

    摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...

  7. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  8. Python基础知识(五)

    # -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...

  9. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

  10. python基础知识部分练习大全

    python基础知识部分练习大全   1.执行 Python 脚本的两种方式 答:1.>>python ../pyhton.py 2. >>python.py   #必须在首行 ...

随机推荐

  1. windows下更新node环境

    https://github.com/Kenshin/gnvm 下载gnvm.exe程序 使用where node命令查看node所在目录,并将下载好的gnvm.exe程序复制到目录中 输入gnvm  ...

  2. 第七章:四大组件之Service

    Service是Android系统中的一种组件,它跟Activity的级别差不多,但是它不能自己运行,只能后台运行,并且可以和其他组件进行交互.Service是没有界面的长生命周期的代码.Servic ...

  3. TCP/IP 笔记 - 防火墙和网络地址转换

    防火墙是位于内部网和外部网之间的屏障,是系统的第一套防线,作用是防止非法用户的进入. 网络地址转换是一种IP数据包通过路由器或防火墙时通过重写来源IP地址或目的地址的技术,可以用来隐藏或保护内部网络, ...

  4. Windows系统环境下创建mysql主从数据库方法(双向主从复制)

    创建mysql主从数据库方法(双向主从复制) (一)Windows系统下的MySQL主从复制(单向复制) (1)环境说明: 1,Mysql版本:mysql5.7.20(主从机mysql版本必须一致) ...

  5. 十大经典排序算法的 JavaScript 实现

    计算机领域的都多少掌握一点算法知识,其中排序算法是<数据结构与算法>中最基本的算法之一.排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大 ...

  6. Tomcat 服务器安装 SSL证书,实现 HTTP 自动跳转 HTTPS

    本文以阿里云为例: 一.下载证书 1.1.登录阿里云:https://www.aliyun.com/ 1.2.控制台搜索:SSL证书 1.3.进入 SSL证书控制台 1.4.申请免费 SSL证书,已有 ...

  7. netty源码解解析(4.0)-12 Channel NIO实现:channel初始化

    创建一个channel实例,并把它register到eventLoopGroup中之后,这个channel然后处于inactive状态,仍然是不可用的.只有在bind或connect方法调用成功之后才 ...

  8. JavaScript之破解数独(附详细代码)

      在上一篇分享中,我们用Python和Django来破解数独,这对不熟悉Python和Django的人来说是非常不友好的.这次,笔者只用HTML和JavaScript写了破解数独的程序,对于熟悉前端 ...

  9. ext js 4.0 grid表格根据列值的不同给行设置不同的背景颜色

    Code: Ext.create('Ext.grid.Panel', { ... viewConfig: { getRowClass: function(record) { return record ...

  10. SqlServer主键

    *主键 作用:唯一标识表中的一条记录. *特点: 1不能重复的列. 2主键不能为null. *同名时如何处理:王洋(大) 王洋(小) *主键有两种选用策略: 业务主键和逻辑主键. 业务主键是使用有业务 ...