[笔记] Python字典
好记忆不如烂笔头:
#__author:Mifen
#date: 2018/11/28 #不可变类型:整型,字符串,浮点型(不等于小数,但包括小数),元组(只读,不可修改)
#可变类型:列表,字典(键必须是不可变类型) #字典两大特点:键唯一,无序 # #创建字典:
# dict_0 = {} # 创建一个空字典
# print(dict_0)
#print(type(dict_0)) # dict_1 = {'name':'Mifen','age':'90'}
# dict_1['hobby'] = 'play games' #如果字典里不存在这个键(hobby)则添加进去,否则修改值
# print(dict_1)
# dict_1['name'] = 'Alen' # 存在相同键值,则替换》》》Mifen 替换为 Alen
# print(dict_1) #1.增
# dict_2 = {'name':'Mifen','age':'90'}
# dict_2.setdefault('age','30') #setdefault:如果age这个键存在,不做任何修改,
# # 返回存在的值,没有则添加进去,并返回添加进去的值
# print(dict_2)
# value = dict_2.setdefault('age','30')
# print(value)
# value_2 = dict_2.setdefault('speciality','code')
# print(dict_2)
# print(value_2) #2.查
# dict_3 = {'name':'Mifen','age':'90'}
# print(dict_3['name']) #通过键名查值
# print(dict_3.keys())
#
# key_list = list( dict_3.keys() ) #keys表示拿到字典的全部键名,list为把数据转换成列表
# value_list = list( dict_3.values() ) #value 表示拿到字典的全部 的值
# print(' all key %s all value %s ' % (key_list,value_list))
# print(type(dict_3.keys())) #不转为list时 为 dict_keys 类型 #3.改
# list_1 = [1,2,3,4]
# list_1[0] = 5 #列表:通过 '索引值' 拿到列表的值进行修改
# print(list_1) # dict_4 = {'name':'Mifen','age':'90'}
# dict_4['age'] = 66 #字典: 类似于列表,字典通过 ‘键’ 拿到数据进行修改
# print(dict_4) # list_2 = [1,2,3,4]
# list_3 = [9,8,9,4,9]
# print(list_2 + list_3) #原始的连接操作(+)则不然,它会返回一个全新的列表,不会对列表进行任何修改
# list_2.extend(list_3) # extend 方法修改了被扩展的列表,可以在列表的末尾一次性追加另一个序列中的多个值。
# print(list_2)
#
# dict_5 = {'name':'Mifen','age':'90'}
# dict_6 = {'name':'Alen','hobby':'read'}
# dict_5.update(dict_6) #通过更新字典进行修改,类似于extend操作,如果键值相同会进行覆盖,不同则添加进字典
# print(dict_5) #dict_5 的name改变了
# print(dict_6) #4.删
# dict_7 = {'name':'Alen','hobby':'read'}
# del dict_7['name'] # 把字典中的这个键和值删除
# print(dict_7)
# del dict_7 #整个字典删除
# print(dict_7) #会报错 name 'dict_7' is not defined
#
# dict_7.clear() #直接把字典清空 ,留下一个空字典
# print(dict_7) # dict_8 = {'name':'Alen','hobby':'read','height':'168'}
# return_value = dict_8.pop('name') #更列表差不多一样,但pop(必须由key),应为字典无序,把name删掉,返回删除的值
# print(return_value)
# print(dict_8) # dict_9 = {'name':'Alen','hobby':'read','height':'168','hair':'black'}
# a = dict_9.popitem() #随机删除一个值 ,字典是 ’无序‘ 的,和pop一样有返回(元组方式返回)
# print(a)
# print(dict_9) #5.其它操作及方法 # dict_10 = dict.fromkeys(['p1','p2','p3','p4','p5'],'test') #生成一个字典
# print(dict_10) #{'p1': 'test', 'p2': 'test', 'p3': 'test', 'p4': 'test', 'p5': 'test'} # dict_11 = dict.fromkeys(['p1','p2','p3','p4','p5'],['test1','test2'])
# print(dict_11) #{'p1': ['test1', 'test2'], 'p2': ['test1', 'test2'], 'p3': ['test1', 'test2'], 'p4': ['test1', 'test2'], 'p5': ['test1', 'test2']} #6.字典嵌套 # av_catalog = {
# "欧美":{
# "www.youporn.com": ["很多免费的,世界最大的","质量一般"],
# "www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
# "letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
# "x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"]
# },
# "日韩":{
# "tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
# },
# "大陆":{
# "1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
# }
# }
#
# #要求:把质量一般改为高清无码
# av_catalog["欧美"]["www.youporn.com"][1] += "高清无码" #多级菜单的访问
#
# av_catalog["大陆"]["1024"][1] += ",可以用爬虫爬下来" #进行字符串的拼接
#
# print(av_catalog["大陆"]["1024"]) #ouput ['全部免费,真好,好人一生平安', '服务器在国外,慢,可以用爬虫爬下来']
# #字典排列
# x = [4, 6, 2, 1, 7, 9]
# x.sort(reverse= True)#x.sort(reverse=True) #reverse倒过来
# print(x) #[9, 7, 6, 4, 2, 1]
#
# dict_12= {'name':'Alen','hobby':'read','height':'168'}
# print(sorted(dict_12)) # sorted(dict) : 返回一个有序的包含字典所有 'key的列表',并不是返回字典(无序)
# print(sorted(dict_12.values())) #['168', 'Alen', 'read']
# print(sorted(dict_12.items())) #[('height', '168'), ('hobby', 'read'), ('name', 'Alen')] 按key排位 #遍历字典三种方法;推荐第一种
# dict_12= {'name':'Alen','hobby':'read','height':'168'}
# for i in dict_12: #返回key
# print(i,dict_12[i])
#
# for items in dict_12.items(): #返回元组
# print(items)
#
# for keys,values in dict_12.items():
# print(keys,values)
# for i in dict_12.values():
# print(i)
[笔记] Python字典的更多相关文章
- Python笔记之字典循环
Python笔记之字典循环 1.问题 Python是一门比较好入门的编程语言,但是入门简单,当然坑也是有的,今天就来介绍一个我遇到的坑吧,也是很简单的一个,就是当时脑子有点转不过弯来了. 先看代码 ...
- 笔记-python操作mysql
笔记-python操作mysql 1. 开始 1.1. 环境准备-mysql create database db_python; use db_python; create tabl ...
- 笔记-python lib-pymongo
笔记-python lib-pymongo 1. 开始 pymongo是python版的连接库,最新版为3.7.2. 文档地址:https://pypi.org/project/pymong ...
- MongoDB学习笔记:Python 操作MongoDB
MongoDB学习笔记:Python 操作MongoDB Pymongo 安装 安装pymongopip install pymongoPyMongo是驱动程序,使python程序能够使用Mong ...
- 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 ...
随机推荐
- 让cxGrid像Excel那样高亮显示选区的行号列标
http://www.oschina.net/code/snippet_54100_1102 Developer Express的cxGrid控件是一个相当有特色的数据栅格组件,支持自动分组.卡片式显 ...
- Android-BitmapUtil工具类
Bitmap工具类,获取Bitmap对象 public class BitmapUtil { private BitmapUtil(){} /** * 根据资源id获取指定大小的Bitmap对象 * ...
- WPF Out Of Memory
起因 程序发布后,运行突然奔溃报Out of Memory,查看日志发现如下类似错误(以下堆栈信息来之网络): System.OutOfMemoryException: Insufficient me ...
- WP8里dll类库(SDK)实现多语言多主题
近日在做一个sdk项目,因为要实现多语言切换,单独类库多语言这方面的实现不是很多,故整理如下. 1.添加AppResource.resx(英文)和AppResource-zh-CN.resx 假设我们 ...
- JAVA 从头开始<一>
一.前言 之前用的是C#,公司最近听说要做的新项目是用JAVA的,所以就学一下JAVA是怎么使的,顺便记录一下. 二.软件的安装 1.下载 我系统是WIN10 x64的 下载完成 2.安装 ①习惯性 ...
- 关于margin:-10000px;padding:10000px;的理解
原文链接: 内外补丁负值法是指通过内外补丁的设置来解决一些我们通常方法不能实现的效果.例如:可以通过改变盒模型的样式来使几列div由内容撑开高度但几列div与最高的一栏等高的问题.但是为什么会出现这样 ...
- linux 基本操作笔记
linux文件系统的实现 linux有一个树状结构来组织文件,数的顶端为根目录/,节点为目录,而末节点为所包含的数据文件.我们可以对文件进行多种操作,比如打开和读写. 存储设备分区 文 ...
- Docker之存储管理
本文由作者邹珍珍授权网易云社区发布. 本文主要介绍Docker的存储管理.Docker拥有镜像分层,写时复制机制以及内容寻址存储等特征,为了支持这些特征,Docker设计了一套镜像元数据管理机制来管理 ...
- CRT和EXCRT简单学习笔记
中国剩余定理CRT 中国剩余定理是要求我们解决这样的一类问题: \[\begin{cases}x\equiv a_1\pmod {b_1} \\x\equiv a_2 \pmod{b_2}\\...\ ...
- JS弹出对话框函数alert(),confirm(),prompt()
1,警告消息框alert() alert 方法有一个参数,即希望对用户显示的文本字符串.该字符串不是 HTML 格式.该消息框提供了一个“确定”按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是 ...