返回顶部
首页 > 资讯 > 后端开发 > Python >Python元组与字典
  • 319
分享到

Python元组与字典

字典Python 2023-01-31 02:01:13 319人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

python字典概念:字典是另一种可变容器类型,且可存储任意类型对象,如其他容器类型。字典由键和对应值成对组成。字典也被称作关联数组或哈希表。理解好一一对应的关系很重要 1. 掌握字典类型a) 字典的特点无序: 通过键实现元素存取,故无序可


python字典

概念:字典是另一种可变容器类型,且可存储任意类型对象,如其他容器类型。

字典由键和对应值成对组成。字典也被称作关联数组或哈希表。理解好一一对应的

关系很重要

 

1. 掌握字典类型

a) 字典的特点

无序: 通过键实现元素存取,故无序

可变:可以通过键进行改变值

异构:支持多种数据类型

嵌套:可以在键值对中的值部分出现字典

b) 定义字典:

ii. 方法一:{key1:value1,key2:value2,...}

iii. 方法二:dict()内置函数:指定键值

例:d2=dict(name="jerry",age="45",gender="m")

iv. 关键点:

键与值用冒号“:”分开;

项与项用逗号“,”分开;

字典中的键必须是唯一的,而值可以不唯一

   实例:

   

dict = {'Alice': '16', ' MadKing ': '17', 'Cecil': '18'}
dict1 = { 'abc': 456 }dict2 = { 'abc': 123, 98.6: 37 } 嵌套定义


访问字典里的值

把相应的键放入熟悉的方括弧,如下实例:


 

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
  
print "dict['Name']: ", dict['Name'];
print "dict['Age']: ", dict['Age'];

wKiom1jkaKSTehjIAAAK88h6tPc141.png


如果用字典里没有的键访问数据,会输出错误如下:


dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
  
print "dict['Alice']: ", dict['Alice'];


以上实例输出结果:

1

2

3

4

5

dict['Zara']:
Traceback (most recent call last):
  File "test.py", line 4, in <module>
    print "dict['Alice']: ", dict['Alice'];
KeyError: 'Alice'




修改字典

向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:

1

2

3

4

5

6

7

8

9

10

#coding:utf8
  
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
  
dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry
  
  
print "dict['Age']: ", dict['Age'];
print "dict['School']: ", dict['School'];


以上实例输出结果:

1

2

dict['Age']:  8
dict['School']:  DPS School


删除字典元素

能删单一的元素也能清空字典,清空只需一项操作。

显示删除一个字典用del命令,如下实例:


#coding:utf8
  
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
  
del dict['Name']; # 删除键是'Name'的条目
dict.clear();     # 清空词典所有条目
del dict ;        # 删除词典
  
print "dict['Age']: ", dict['Age'];
print "dict['School']: ", dict['School'];


但这会引发一个异常,因为用del后字典不再存在:

1

2

3

4

5

dict['Age']:
Traceback (most recent call last):
  File "test.py", line 8, in <module>
    print "dict['Age']: ", dict['Age'];
TypeError: 'type' object is unsubscriptable


注意:删除元素尽量用字典内置方法,不需要直接del,后面会讨论。

 

字典键的特性

字典值可以没有限制地取任何Python对象,既可以是标准的对象,也可以是用户定义的,但键不行。

两个重要的点需要记住:

1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,如下实例:

1

2

3

4

5

#coding:utf8
  
dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'};
  
print "dict['Name']: ", dict['Name'];


以上实例输出结果:

1

dict['Name']:  Manni


2)键必须不可变,所以可以用数,字符串或元组充当,所以用列表就不行,如下实例:

1

2

3

4

5

#coding:utf8
  
dict = {['Name']: 'Zara', 'Age': 7};
  
print "dict['Name']: ", dict['Name'];


以上实例输出结果:

1

2

3

4

Traceback (most recent call last):
  File "test.py", line 3, in <module>
    dict = {['Name']: 'Zara', 'Age': 7};
TypeError: list objects are unhashable


掌握字典相关方法

1.1 添加元素:dict1[key] = value

例如:

wKioL1jkaPzj0RKcAAAYjT2WEXE220.png

wKiom1jkaRbQmrVoAAAJmEk0XHw057.png

1.2 items():变量解包:即将字典转化为键、值作为元组的列表

例如:

wKioL1jkaSmzKdrZAAAR7EAKYLg367.png

 

wKiom1jkaTaSJVNcAAAKSVTkHHk939.png


dict = {'Name': 'Zara', 'Age': 7}
 
print "Value : %s" %  dict.items()
 
Value : [('Age', 7), ('Name', 'Zara')]

    

            1.3 keys();键列表

例如:

wKioL1jkaVuyj4WOAAAV704FLTI780.png-wh_50

wKiom1jkaYHCumO9AAAYIwLzEDo184.png

 

1.4 values():值列表

例如:

wKiom1jkaaXASY-zAAAk7vMTdq4320.png

 

wKioL1jkab6QFGspAAAXsoeIXK0167.png-wh_50


1.5 has_key():判断是否存在某个键,返回结果true 或false

例如:

wKioL1jkafrQNLV-AAAR7EAKYLg774.png

 

wKioL1jkageAFrE8AAAKSVTkHHk385.png


 

1.6 len():取得字典中键值对个数

例如:

wKioL1jkai7Bet5cAAAV704FLTI866.png

 

1.7         update():在原字典上合并字典,键相同时会被覆盖。

        例如:

        

wKioL1jkaj_yUSWKAAAk7vMTdq4732.png


1.8         get():取得某个键对应的值

例如:

wKiom1jkalihylIxAAAQrDjzS4A640.png-wh_50

1.9         pop():弹出指定键对应的值

wKiom1jkamXwzCXmAAAXw-PoZ_U048.png

1.10         popitem():随机弹出键值对

wKiom1jkanmgD7jiAAAWMgFW628741.png

1.11         clear():清除所有元素

例如:

wKiom1jkaobjjqc9AAAWeexbPIs886.png

2. 掌握字典的遍历:

wKiom1jkaqqCSq6JAACKDFdbJGg908.png

 

概念:Python的元组与列表类似,也是一种容器类型,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。

Python的元组与列表类似,不同之处在于元组的元素不能修改。

特点:支持异构;

  支持嵌套;

  不可变

元组使用小括号,列表使用方括号。

元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

如下实例:

1

2

3

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = "a", "b", "c", "d";


创建空元组


tup1 =();


元组中只包含一个元素时,需要在元素后面添加逗号


tup1 =(50,);


元组与字符串类似,下标索引从0开始,可以进行截取,组合等。



访问元组

元组可以使用下标索引来访问元组中的值,如下实例:


 
tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5, 6, 7 );
 
print "tup1[0]: ", tup1[0]
print "tup2[1:5]: ", tup2[1:5]


以上实例输出结果:


tup1[0]:  physics
tup2[1:5]:  [2, 3, 4, 5]




修改元组

元组中的元素值是不允许修改的,但我们可以对元组进行连接组合,如下实例:


 

tup1 = (12, 34.56);
tup2 = ('abc', 'xyz');
 
# 以下修改元组元素操作是非法的。
# tup1[0] = 100;
 
# 创建一个新的元组
tup3 = tup1 + tup2;
print tup3;


以上实例输出结果:


(12, 34.56, 'abc', 'xyz')


删除元组

元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组,如下实例:


 

 
tup = ('physics', 'chemistry', 1997, 2000);
 
print tup;
del tup;
print "After deleting tup : "
print tup;


以上实例元组被删除后,输出变量会有异常信息,输出如下所示:

1

2

3

4

5

6

('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
  File "test.py", line 9, in <module>
    print tup;
NameError: name 'tup' is not defined




元组运算符

与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着他们可以组合和复制,运算后会生成一个新的元组。

Python 表达式

结果

描述

len((1, 2, 3))

3

计算元素个数

(1, 2, 3) + (4, 5, 6)

(1, 2, 3, 4, 5, 6)

连接

['Hi!'] * 4

('Hi!', 'Hi!', 'Hi!', 'Hi!')

复制

3 in (1, 2, 3)

True

元素是否存在

for x in (1, 2, 3): print x,

1 2 3

迭代




元组索引,截取

因为元组也是一个序列,所以我们可以访问元组中的指定位置的元素,也可以截取索引中的一段元素,如下所示:

元组:


L =('spam', 'Spam', 'SPAM!')


Python 表达式

结果

描述

L[2]

'SPAM!'

读取第三个元素

L[-2]

'Spam'

反向读取;读取倒数第二个元素

L[1:]

['Spam', 'SPAM!']

截取元素




无关闭分隔符

任意对象 以逗号隔开,默认为元组,如下实例:


print 'abc', -4.24e93, 18+6.6j, 'xyz';
x, y = 1, 2;
print "Value of x , y : ", x,y;


元组内置函数

Python元组包含了以下内置函数

 

序号

方法及描述

1

len(t)  计算元组元素个数。

   

wKioL1jka9WSrhgTAAAF2Q8Al7Y197.png


2

max(t) 返回元组中元素最大值。

   

wKiom1jka-XSNxFzAAAFtelhHks933.png


3

min(t) 返回元组中元素最小值。

   

wKioL1jkbBzSXlXGAAAF2IGklYU979.png


4

tuple(li) 将列表转换为元组

   

wKiom1jkbCexwS7JAAAFMw7HAyY058.png


5

index():返回指定元素第一次出现的索引位置

count():指定元素出现的次数

例如:

  

wKioL1jkbDLCN2A8AAAMdZWk480042.png

 

 


--结束END--

本文标题: Python元组与字典

本文链接: https://lsjlt.com/news/185586.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python元组与字典
    python字典概念:字典是另一种可变容器类型,且可存储任意类型对象,如其他容器类型。字典由键和对应值成对组成。字典也被称作关联数组或哈希表。理解好一一对应的关系很重要 1. 掌握字典类型a) 字典的特点无序: 通过键实现元素存取,故无序可...
    99+
    2023-01-31
    字典 Python
  • python列表、元组、字典
    1.列表列表是由一序列特定顺序排列的元素组成的。可以把字符串,数字,字典等都可以任何东西加入到列表中,列表中的元素之间没有任何关系。列表也是自带下标的,默认也还是从0开始。列表常用方括号表示,即:[],元素用逗号隔开。例子:a = ["hu...
    99+
    2023-01-31
    字典 列表 python
  • python元组 字典 集合
    1.列表构建栈的数据结构:栈的特点:先进后出 #!/usr/bin/env python #coding:utf-8 stack = [] info = """ 栈结构 1.入栈 2.出栈 ...
    99+
    2023-01-31
    字典 python
  • 9. python 列表、元组、字典
    1.列表a = ['a', 'b', 'c', 'abc']## append  末尾追加a.append('hello')print (a)['a', 'b', 'c', 'abc', 'hello']## pop 末尾删除a.pop(...
    99+
    2023-01-31
    字典 列表 python
  • python之列表、元组、字典
    1描述 打了激素的数组数组是只能存储同一数据类型的结构列表:可以存储多数数据类型的数组 2 定义列表: 元组和列表的不同:元组是不可变对象而列表是可变对象 3 列表的特性: 1 索引 分为前向索引、反向索引和多重索引 2...
    99+
    2023-01-31
    字典 列表 python
  • Python 列表&元组&字典&集合
    列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片、合并、删除等操作 可通过索引来向指定位置插入元素 可通过pop()方法删除末尾元素,pop(索引...
    99+
    2023-01-30
    字典 列表 Python
  • python元组和字典的介绍
    这篇文章主要介绍“python元组和字典的介绍”,在日常操作中,相信很多人在python元组和字典的介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python元组和字典的介绍”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-01
  • python元字典
    Python元字典字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用"{ }"标识。字...
    99+
    2023-01-31
    字典 python
  • 元组、字典、集合
    1、作用 存多个值,对比列表来说,元组不可变,主要是用来读。 2、定义 与列表类型比,只不过[ ]换成() t = ()  #本质:t = tuple(())print(t,type(t))  #() <class 'tuple&...
    99+
    2023-01-31
    字典
  • Python如何生成元组和字典
    本文小编为大家详细介绍“Python如何生成元组和字典”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python如何生成元组和字典”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.生成元组元组是元素按顺序组合后...
    99+
    2023-07-05
  • Python中元组,列表,字典的区别
    Python中,有3种内建的数据结构:列表、元组和字典。 1.列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。列表中的项目。列表中的项目应该包括在方括号中,这样...
    99+
    2022-06-04
    中元 字典 区别
  • python元组和字典的简单学习
    用圆括号()标识,定义元组后,元组元素不可修改。如果想修改元组只能重新定义元组。 因为元组不可更改,所以也没有增删改等用法,主要语法就是访问元组元素,遍历元组。 访问元组元素: 1 tuple1 = (1, 2, 3, 4) 2 pr...
    99+
    2023-01-30
    字典 简单 python
  • Python生成元组和字典的方法
    目录1.生成元组1.1使用()生成元组1.2使用tuple函数生成元组1.3使用divmod函数生成元组2.生成字典2.1使用{}生成字典2.2使用dict函数生成字典1.生成元组 ...
    99+
    2023-02-27
    Python生成元组 Python生成字典
  • python基础-3:元组、字典、深浅拷
       小生博客:http://xsboke.blog.51cto.com                                   -------谢谢您的参考,如有疑问,欢迎交流一、 元组(tuple)  1. 元组的特点元组是固...
    99+
    2023-01-31
    深浅 字典 基础
  • python_列表——元组——字典——集
    列表——元组——字典——集合: 列表: # 一:基本使用# 1、用途:存放多个值# 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list(['a','b','c'])# l1=l...
    99+
    2023-01-30
    字典 列表
  • python列表、元组、字典、集合的简单
    1、常用操作函数 1 #Author:CGQ 2 import copy 3 #列表 4 ''' 5 names=["ZhangYang","XiaoHei","XiaoHei","LiSan"] 6 print(nam...
    99+
    2023-01-30
    字典 简单 列表
  • Python 列表、元组、字典及集合操作
    一、列表 列表是Python中最基本的数据结构,是最常用的Python数据类型,列表的数据项不需要具有相同的类型 列表是一种有序的集合,可以随时添加和删除其中的元素 列表的索引从0开始 1、创建列表 >>> lis...
    99+
    2023-01-30
    字典 操作 列表
  • 怎么用Python字典删除字典元素
    这篇文章主要介绍“怎么用Python字典删除字典元素”,在日常操作中,相信很多人在怎么用Python字典删除字典元素问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Python字典删除字典元素”的疑惑有所...
    99+
    2023-06-17
  • Python基础学习列表+元组+字典+集合
    目录一、列表二、元组三、字典四、集合五、总节前言: 这一章的知识紧接上一章,零基础的小伙伴可以从上一章学起来。当然,你也可以收藏起来慢慢学习,学习是不可操之过急的啦… ...
    99+
    2024-04-02
  • Python元组和字典的知识点有哪些
    这篇文章主要介绍“Python元组和字典的知识点有哪些”,在日常操作中,相信很多人在Python元组和字典的知识点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python元组和字典的知识点有哪些”的疑...
    99+
    2023-06-27
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作