Python字典 day2
一、字典
1、字典的特点:
一系列键-值对(key-value),字典用放在花括号{ }中的一系列键值对表示;
字典中有多个元素时需要用逗号,隔开;
key不能重复;
字典是无序的。
字典的优点:字典取值方便,速度快,比列表取值快,不需要像列表一样一个一个找。
2、字典的方法:
已存在的字典:
info = {
"name":"andy",
"color":"red",
"city":"beijing"
}
(1)增加
方法有二:
【1】向字典info中增加一个新的key:height
info['height']=160
【2】向字典info中增加一个新的key:sex
info.setdefault('sex','male')
如上两种方法在新增不存在的键时没有区别,但要是增加已存在的键,则不同:
若使用方法【1】可修改原存在的键对应的值;
若使用方法【2】则不会修改原存在的键对应的值;
(2)删除
方法有二:
【1】pop方法
info.pop('sex')
【2】del方法
del info['sex']
随机删除一个元素方法不常用,info.popitem()
(3)修改
同新增的【1】方法
info['height']=160
(4)取值
【1】输入键取对应的值
print(info['color'])
【2】使用get取值
print(info.get('color'))
如上两种方法都可以取已存在的key,若取字典里不存在的key,则不同:
【1】会报错
【2】返回None (使用此方法可设置取不到值时,传入默认值,方法为info.get('color','red'))
>获取字典里所有的key
print(info.keys())
>获取字典里所有的value
print(info.values())
(5)清空
info.clear()
(6)update与list中的extend类似,如下为将stu字典加入到info字典中
stu ={
'stu_id':'',
'stu_no':'no.1'
}
info.update(stu)
print(info)
3、多层字典取值
stu_info = {
'liudonghai':{
'house':['三环','四环','五环'],
'car':{
'china':['byd','五菱宏光','Hongqi'],
'jap':['丰田','本田'],
'Germany':{
'ben-z':2,
'bmw':3,
'audi':5
}
}
}
}
#1、刘东海又买了一辆宝马
stu_info['liudonghai']['car']['Germany']['bmw']+=1
print(stu_info['liudonghai']['car']['Germany']['bmw'])
#2、刘东海不要byd和红旗了
stu_info['liudonghai']['car']['china'].remove('byd')
print(stu_info['liudonghai']['car']['china'])
stu_info['liudonghai']['car']['china'].pop(-1)
print(stu_info)
4、循环字典:
accounts = {
"liuzhao":"",
"liudonghai":"",
"zhaowenming":"",
"xiaoming":""
}
for k in accounts: #直接循环字典每次循环的时候取到的是字典的key
print("%s => %s"%(k,accounts[k])) #同时取到key和value--方法1
for k,v in accounts.items(): #同时取到key和value--方法2,没有上面的方法1效率高
print("%s => %s"%(k,v))
l = ['liuzhao', 'liudonghai', 'zhaowenming', 'xiaoming', 'users']
s = '34125345235355ssssss'
for i in l: #循环list,循环list里的每一个元素
print(i)
for j in s: #循环字符串,循环字符串里的每一个元素
print(j)
print(list(range(5)))
print(list(range(1,5)))
Python字典 day2的更多相关文章
- Python基础-day2
1.Python模块python 中导入模块使用import语法格式:import module_name示例1: 导入os模块system('dir')列出当前目录下的所有文件 # _*_ codi ...
- python s12 day2
python s12 day2 入门知识拾遗 http://www.cnblogs.com/wupeiqi/articles/4906230.html 基本数据类型 注:查看对象相关成员 var, ...
- python学习day2
一.模块初识 python模块 模块让你能够有逻辑地组织你的Python代码段. 把相关的代码分配到一个 模块里能让你的代码更好用,更易懂. 模块也是Python对象,具有随机的名字属性用来绑定或引用 ...
- Python字典和集合
Python字典操作与遍历: 1.http://www.cnblogs.com/rubylouvre/archive/2011/06/19/2084739.html 2.http://5iqiong. ...
- python 字典排序 关于sort()、reversed()、sorted()
一.Python的排序 1.reversed() 这个很好理解,reversed英文意思就是:adj. 颠倒的:相反的:(判决等)撤销的 print list(reversed(['dream','a ...
- python字典中的元素类型
python字典默认的是string item={"browser " : 'webdriver.irefox()', 'url' : 'http://xxx.com'} 如果这样 ...
- python字典copy()方法
python 字典的copy()方法表面看就是深copy啊,明显独立 d = {'a':1, 'b':2} c = d.copy() print('d=%s c=%s' % (d, c)) Code1 ...
- python 字典实现类似c的switch case
#python 字典实现类似c的switch def print_hi(): print('hi') def print_hello(): print('hello') def print_goodb ...
- python字典的常用操作方法
Python字典是另一种可变容器模型(无序),且可存储任意类型对象,如字符串.数字.元组等其他容器模型.本文章主要介绍Python中字典(Dict)的详解操作方法,包含创建.访问.删除.其它操作等,需 ...
随机推荐
- Java JVM虚拟机选项Xms/Xmx/PermSize/MaxPermSize(转)
通过JVM的这些选项:Xms/Xmx/PermSize/MaxPermSize可以牵扯出很多问题,比如性能调优等. 说明:以下转载没经过实践. 经验实例(参考): 设置每个线程的堆栈大小.JDK5.0 ...
- Spring MVC-表单(Form)标签-下拉框(Dropdown)示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_dropdown.htm 说明:示例基于Spring MVC 4.1.6. 以下示 ...
- 我的Android进阶之旅------>Android中ListView中嵌套(ListView)控件时item的点击事件不起作的问题解决方法
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvb3V5YW5nX3Blbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...
- Photon + Unity3D 线上游戏开发 学习笔记(四)
这一节 我们建立 photon Server 端的框架 一个最简单的Photon框架 就包括一个 Applocation 类 和 一个 peer 类,作用例如以下: * Application 类是 ...
- 飘逸的python - 极简的二叉树前中后序通杀函数
对于任一结点.能够按某种次序运行三个操作: 訪问结点本身(N) 遍历该结点的左子树(L) 遍历该结点的右子树(R) 用来表示顺序,即,前序NLR/中序LNR/后序LRN. 以下我们用namedtupl ...
- 菜鸟nginx源代码剖析数据结构篇(六) 哈希表 ngx_hash_t(上)
菜鸟nginx源代码剖析数据结构篇(六) 哈希表 ngx_hash_t(上) Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog. ...
- Codeforces Round #281 (Div. 2) C. Vasya and Basketball 排序
C. Vasya and Basketball Vasya follows a basketball game and marks the distances from which each te ...
- 微信小程序初探(一、简单的数据请求)
微信小程序出来有一段时间了,之前没看好小程序(觉得小程序体验不咋好,内心对新事物有抵触心里,请原谅我的肤浅[捂脸][捂脸]),不过后来偶然之间玩过小程序的游戏(跳一跳.球球大作战.猜画小歌 等),顿悟 ...
- css中的绝对定位和相对定位(详解,总结)
css中的绝对定位和相对定位(详解,总结) 总结: 设置绝对定位或者相对定位后都从文档中浮起来了,区别是相对定位还占着原来的位置,绝对定位不占着原来的位置,可以种z-index来改变元素的浮动的堆叠次 ...
- NSURLSession 和 NSURLConnection 的比较
一.NSURLConnection 1.iOS2.0出现,iOS9.0后废弃的网络请求发送方式 2.可以在初始化时确定发送同步还是异步的请求,并且可以选择执行队列. +(void)sendAsynch ...