python笔记04:字典
4.1 字典的使用
某些情况下,字典比列表更好用一些,比如:
4.2 创建和使用字典
phonebook = {'Alice':1567,'Beth':'','Cecil':0010}
4.2.1 dict函数
items = [('name','Gumby'),('age',43)]
d = dict(items)
>>> print d
{'age': 43, 'name': 'Gumby'}
4.2.2 字典的基本操作
4.2.3 字典的格式化字符串
phonebook = {'Alice':1567,'Beth':'','Cecil':0010}
>>> "Cecil's phone number is %(Cecil)s." % phonebook
"Cecil's phone number is 8."
4.2.4 字典方法
1.clear:清除字典中的所有项
2.copy:返回一个具有相同键值对的新字典
x = {'username':'admin','machine':['foo','bar','baz']}
y = x.copy()
y['username'] = 'mlh'
y['machine'].remove('bar')
print y
print x #结果如下
{'username': 'mlh', 'machine': ['foo', 'baz']}
{'username': 'admin', 'machine': ['foo', 'baz']}
from copy import deepcopy
d = {}
d['names'] = ['Alfed','Bertand']
c = d.copy()
dc = deepcopy(c)
dc['names'].append('Clive') print c
print dc
#结果如下:
{'names': ['Alfed', 'Bertand']}
{'names': ['Alfed', 'Bertand', 'Clive']}
3.fromkeys:使用给定的键建立新字典
>>> {}.fromkeys(['name','age'])
{'age': None, 'name': None} >>> dict.fromkeys(['name','age'])
{'age': None, 'name': None}
4.get:更宽松的访问字典方法
>>> d = {}
>>> d['name']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'name'
>>> print d.get('name')
None
>>> print d.get('name','N/A')
N/A
>>> d['age'] = 43
>>> d.get('age')
43
5.haskey:判断是否有特定键
6.item与iteritems:将字典的值以列表形式返回
>>> d = {'name':'Lily','age':24}
>>> d.items()
[('age', 24), ('name', 'Lily')]
>>> it = d.iteritems()
>>> print it
<dictionary-itemiterator object at 0x7f54e5fff158>
>>> print list(it)
[('age', 24), ('name', 'Lily')]
7.keys与iterkeys:将字典中的键以列表形式返回
8.pop:获得相应键的值,并删除键值对
>>> d
{'age': 24, 'name': 'Lily'}
>>> d.pop('name')
'Lily'
>>> d
{'age': 24}
9.popitem:弹出最后一个元素
10.setdefault:获得给定键相关联的值
>>> d = {}
>>> d.setdefault('name','N/A')
'N/A'
>>> d
{'name': 'N/A'} >>> d['name'] = 'Gumby'
>>> d.setdefault('name','N/A')
'Gumby'
>>> d
{'name': 'Gumby'}
>>> d = {}
>>> d.setdefault('name',[]).append(my_sister)
>>> d
{'name': ['Anne']}
>>> d.setdefault('name',[]).append('my_sister')
>>> d
{'name': ['Anne', 'my_sister']}
11.update:利用一个字典项更新另一个字典
>>> d = {'name':'Gumby','age':42,'address':'BeiJing'}
>>> x = {'name':'Lily'}
>>> d.update(x)
>>> d
{'age': 42, 'name': 'Lily', 'address': 'BeiJing'} #d中的name值已随x更新
>>> x
{'name': 'Lily'}
12.values与itervalues:返回字典中的值
python笔记04:字典的更多相关文章
- Python笔记之字典循环
Python笔记之字典循环 1.问题 Python是一门比较好入门的编程语言,但是入门简单,当然坑也是有的,今天就来介绍一个我遇到的坑吧,也是很简单的一个,就是当时脑子有点转不过弯来了. 先看代码 ...
- Python笔记4——字典的一些基本操作
#字典 key-value #添加 my_family= {"father": "weihaiqing", "mother": " ...
- Python数据类型-04.字典
字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据 ------------ 完美的分割线 ------------- 1.字典引入 # 为何还要用字典?存放一个人的信 ...
- python笔记-dict字典的方法2
#!/usr/bin/env python #-*- coding:utf-8 -*- ''' 概述: 使用键值(key-value)存储,具有极快的查找速度 注意:字典是无序的 key的特性: 1. ...
- python笔记-dict字典的方法
#!/usr/bin/env python #-*- coding:utf-8 -*- #打印0001-9999的数字 for i in range(9999): s = "%04d&quo ...
- 我的Python笔记04
摘要: 声明:本文整理借鉴金角大王的Python之路,Day4 - Python基础4 (new版) 本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件 ...
- Python笔记 #04# Methods
源:DataCamp datacamp 的 DAILY PRACTICE + 日常收集. Methods String Methods List Methods 缺一 Methods You can ...
- python笔记04
数据类型(二) 今日内容 1.列表 2.元组 内容回顾和补充 1.计算机基础 ①硬件:cpu,内存,硬盘,主板,网卡 ②操作系统:linux,centos, Ubuntu,redhat windows ...
- Python笔记:字典的fromkeys方法创建的初始value同内存地址问题
dict中的fromkeys()函数可以通过一个list来创建一个用同一初始value的dict. d = dict.fromkeys(["苹果", "菠萝"] ...
随机推荐
- 啤酒和饮料|2014年蓝桥杯B组题解析第一题-fishers
啤酒和饮料|2014年第五届蓝桥杯B组题解析第一题-fishers 啤酒和饮料 啤酒每罐2.3元,饮料每罐1.9元.小明买了若干啤酒和饮料,一共花了82.3元. 我们还知道他买的啤酒比饮料的数量少,请 ...
- Nlog、elasticsearch、Kibana以及logstash在项目中的应用(一)
前言 最近在做文档管理中,需要记录每个管理员以及用户在使用过程中的所有操作记录,本来是通过EF直接将操作数据记录在数据库中,在查询的时候直接从数据库中读取,但是这样太蠢了,于是在网上找到了logsta ...
- BZOJ 2648 kd-tree模板
学习了一下kd-tree的基本写法 http://blog.csdn.net/jiangshibiao/article/details/34144829 配合 http://www.bilibili. ...
- React Native之进度条ProgressViewIOS的使用
import React,{Component}from 'react'; import { AppRegistry, StyleSheet, Text, View, ProgressViewIOS, ...
- django模型的元数据Meta
模型的元数据,指的是“除了字段外的所有内容”,例如排序方式.数据库表名.人类可读的单数或者复数名等等.所有的这些都是非必须的,甚至元数据本身对模型也是非必须的.但是,我要说但是,有些元数据选项能给予你 ...
- Codeforces 595B - Pasha and Phone
595B - Pasha and Phone 代码: #include<bits/stdc++.h> using namespace std; #define ll long long # ...
- Vue.js 响应式原理
1. Vue2.x 基于 Object.defineProperty 方法实现响应式(Vue3 将采用 Proxy) Object.defineProperty(obj, prop, descript ...
- angular5表单验证问题
例举一个patten的列子 可能出现的问题,表单元素需要添加name属性 还有的验证如maxlength,minlength,required等 一.验证某一个表单元素如下 *ngIf="s ...
- English trip -- VC(情景课)10 C I like to watch TV. 我爱看电视
Grammar focus 语法点: like to do you do they What does he like to do? does she Practice 练习 ...
- 关于一致性hash详细
一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似.一致性哈希修正了CARP使用的简 单哈 ...