Python基础知识:字典dict

注意:

  # 字典是可变类型
  # 字典中的数据是无序的
  # 一个字典条目的语法是 键:值
  # 任何不可变数据类型都可以作为条目的键

知识点一:创建

键:必须独一无二(如果键重复存入,会被覆盖),只能是不可变类型(常用字符串和数字)
值:可以是任意数据类型

知识点二:访问数据项

通过key------dic[key]
  如果key不存在,报KeyError       没有索引!不能分片!

知识点三:更新数据项

dic[key] = value     如果key不存在,就是新增数据项

知识点四:删除数据项

del dic[key] 删除键是‘key‘的条目
del dict 删除词典

知识点五:字典方法

判断key存在
  *has_key(key)
  *in 、not in

*dict.keys() 返回一个包含字典所有KEY的列表

*dict.values() 返回一个包含字典所有value的列表

*dict.items() 返回一个包含所有(键,值)元祖的列表

dic.pop(key) 删除键key的项并返回key对应的 value值,如果key不存在,报错

dict.clear() 删除字典中的所有项或元素

dict.copy() 返回一个字典浅拷贝的副本

*dict.fromkeys(seq, val=None) 创建并返回一个新字典,以seq中的元素做该字典的键,val做该字典中所有键对应的初始值(默认为None)

***dict.get(key, default=None) 返回字典中key对应的值,若key不存在字典中,则返回default的值(default默认为None)

*adict.update(bdict) 将字典bdict的键值对添加到字典adict中
  key存在,就更新value。key不存在就新增数据项。

  字典合并 update

知识点六:运算

字典不支持拼接和重复操作符(+,*)
字典的比较操作 :长度等、键等、值等

知识点七:迭代

遍历字典的key
  for key in adict.keys():print key

遍历字典的value
  for value in adict.values(): print value

遍历字典的项
  for item in adict.items():print item

遍历字典的key-value
  for key, value in adict.items(): print ‘key=%s, value=%s‘ %(key, value)

*迭代器
  iter()函数可以将可迭代对象,变成迭代器
  迭代器有next()方法返回下一项,当没有值时,抛出StopIteration错误
  dict.iteritems()、dict.iterkeys()、dict.itervalues()
  与它们对应的非迭代方法一样,不同的是它们返回一个迭代子,而不是一个列表;

知识点八:排序

sorted(dic,value,reverse)

dic为可以迭代的对象,value 为排序的对象(这里指键或键值)
reverse:注明升序还是降序,True--降序,False--升序(默认)
键排序
--sorted(dict.keys())
--sorted(dict.items(), key=lambda item:item[0])
值排序
--sorted(dict.values())
--sorted(dict.items(), key=lambda item:item[1])

*collections:OrderedDict
OrderedDict的Key会按照插入的顺序排列,不是Key本身排序

知识点九:类型转换

其他类型转字典:
  字符串:eval(str)
  列表:
      二维列表转换
          手动构造
          利用zip

  字典转列表:
      list(dic) == dict.keys()
      dict.keys() dict.values()
  字典转元组:
      tuple(dic) -- 只包含key值
字典转字符串:
      str(dic)

练习一:把字符串”k1:1|k2:2|k3:3”处理成 python 字典的形式:{‘k3‘: 3, ‘k2‘: 2, ‘k1‘: 1

string = "k1:1|k2:2|k3:3"dic={}print string.split("|")for kv in string.split("|"):    k,v =kv.split(":")    if v.isdigit():        v=int(v)    dic[k]=vprint dic

练习二:

原文地址:https://www.cnblogs.com/ylpaj/p/9300823.html

时间: 2024-10-10 23:28:01

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

Python基础知识---字典

现在在实习期间,好久没用Python了,今天在做Java项目时用的HashMap让我联想到了Python中的字典,就写一些Python字典的知识吧,复习复习. 字典:  key --> value的映射关系,字典是无序性的,字典的key是不可变类型的,如int, str, float,tuple... 1.创建字典 (1)第一种方式创造字典,一次给全 >>> user = {'id': 1000, 'name': 'scd', 'password':'123'} >>&

Python基础之字典dict(薄弱环节重点回顾,记不住打死自己)

字典是我Python基础里面学的最薄弱的环节,重新回顾,务必深入骨髓. Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,字典是另 一种可变容器模型,且可存储任意类型对象.具有极快的查找速度. 字典是一种通过名字或者关键字引用的得数据结构,其键可以是数字.字符串.元组.布尔值也可以,这种结构类型也称之为映射.字典类型是Python中唯一內建的映射类型. 重点就是字典的键必须是可以被哈希的,什么叫可以被哈希我说不上来,简单的说就是不可变对象. a=

python基础之字典dict

不可变数据类型:tuple.bool.int.str --可哈希类型可变数据类型:list.dict.set --不可哈希类型dict-key 必须是不可变数据类型,可哈希dict-value 任意数据类型dict 优点:二分查找.存储大量的关系型数据 特点:无序的-没有索引,只能按照键值对查找增:dict[key] = value dict.setdefault(key) dict.setdefault(key ,value)删:dict.pop(key) dict.pop(key,retur

Python基础入门—字典dict

目录 字典 字典的定义 字典对象增加元素 字典对象元素删除 字典对象的修改 字典对象元素的查找 字典的深浅拷贝 字典 字典是一种可变数据类型 点典的元素存储方式是键值对的形式,键值对之间用逗号隔开 键值对的形式形如:key:value 最外层用{}括起来 d = {key1 : value1, key2 : value2 } 由于字典是键值对的形式,所以字典是无序的,自然不能切片和索引,而是通过键来取值 键:一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一 值:可以取任何数据类型

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

Python基础知识(四)------字典 字典 一丶什么是字典 ? dict关键字 , 以 {} 表示, 以key:value形式保存数据 ,每个逗号分隔 ? 键: 必须是可哈希,(不可变的数据类型),必须是唯一的 ? 值: 任意数据类型 特点: ? 查询的效率非常高,通过key来查找元素 ? 内部使用key来计算一个内存地址(暂时), hash算法,key必须是不可变的数据类型(key 必须是可哈希的数据类型),key必须是不可变的数据类型 ? 字典是无序的, python3.6版本以上,默

Python基础知识梳理 - 第02部分

本文是Python基础知识的第二篇, 主要是对内置对象类型的介绍, 涉及的类型如下表. 数字类型 在Python中, 数字并不是一个真正的对象类型, 而是一组类似类型的分类, 如整数和浮点数, 复数等. Python还提供了若干处理数字对象的工具, 如内置数学函数pow, abs等, 标准库math, random等. 看下数字的简单使用. In [15]: 123 + 234 Out[15]: 357 In [16]: 1.5 * 4 Out[16]: 6.0 In [32]: pow(2,

python基础知识部分练习大全

python基础知识部分练习大全   1.执行 Python 脚本的两种方式 答:1.>>python ../pyhton.py 2. >>python.py   #必须在首行有 #!/usr/bin/env python3 指定执行语言 2.简述位.字节的关系 答:一个字节(byte)=8位(bit)  位为最小的单位 3.简述 ascii.unicode.utf-8.gbk 的关系 ascii:只能表示256个符号 unicode:万国码,各国都有 需要有2位来表示 utf-8

Python基础知识(五)

# -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : [email protected]# @File : Python基础知识(五).py# @Software : PyCharm Python基础知识(五)今日内容大纲:昨日内容回顾 list: 增:append() insert(index,object) extend() 迭代着追加 删: pop 默认删除最后一个,按照索引去删除,有返回值.

python基础知识的学习和理解

参考链接:https://github.com/yanhualei/about_python/tree/master/python_learning/python_base python基础知识笔记 Flask aiohttp的学习和理解 assert() asyncio的学习和理解 continue_break学习和理解 cprofile代码效率分析 datatime dict字典学习与理解 django_project eval() filter() gevent协程的学习和理解 http服

python基础之字典及字符

python基础之字典及字符串处理 本节内容 字典介绍及内置方法 字符串处理 1.字典介绍及内置方法 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的.可哈希表示key必须是不可变类型,如:数字.字符串.元组. 字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型.列表是有序的对象结合,字典是无序的对象集合.两者