1、创建数值元组:

  在Python中,使用tuple()函数直接将range()函数循环出来的结果转换为数值元组。

tuple(data)    #tuple()函数的基本语法
  data表示可以转换为元组的数据,其类型可以是range对象、字符串、元组或其他可迭代类型的数据。

  (1)创建一个10~20(不包括20)所有偶数的元组。

double=tuple(range(,,))
print(double)

2、删除元组:

  对于已经创建的元组,不再使用时,可以使用del语句将其删除。语法格式如下。

del tuplename    #tuplename 表示要删除元组的名称

  del语句在实际开发时,并不常用,因为Python自带的垃圾回收机制会自动销毁不用的元组,所以即使我们不手动将其删除,Python也会自动将其回收。

team=["勇士","掘金","开拓者"]
del team

3、查看元组中的元素:

  在输出全部元组元素时,是包括左右两侧的小括号的,如果不想输出全部的元素,可以通过索引查看指定的元素。

  元组也可以使用切片的方式来获取指定的元素,例如访问元组的前三个元素。

print(title[:])    #title表示的是元组

  (1)例题:使用for循环列出咖啡馆里的咖啡名称,在每一个咖啡名字后都加上“咖啡”名称。

coffee=('卡布奇诺','曼特宁','摩卡','哥伦比亚','蓝山')
for name in coffee:
print(name+"咖啡",end=" ")

  (2)将coffee里的“摩卡”替换成“拿铁”。但是以下的代码是会出错的

coffee=('卡布奇诺','曼特宁','摩卡','哥伦比亚','蓝山')
coffee[]='拿铁'
print(coffee)

  因为元素是不可变序列,我们不能对元组的单个元素值进行修改,如果要更新元组里的数据要重新赋值。

  (3)对元组进行连接组合。

title=("库里","利拉德","欧文")
print("原组合:",title)
title=title+("沃克","威少")
print("新组合:",title)
title=title+("隆多",)
print("新组合:",title)

  及逆行元组连接时,连接的内容必须都是元组,不能将元组和字符串或者列表进行连接。如果要连接的元组只有一个元素时,一定要记得在元素后面加上逗号。

4、元组推导式:

  元组推导式和列表推导式类似,只是将列表的“()”换成“[ ]”

number=(i for i in range())
for i in number:
print(i,end=" ")
print(tuple(number))

5、元组和列表的区别:

  元组和列表都属于序列,类型不受限制。列表类似用铅笔在纸上写下的东西,写错了还可以擦掉;元组则类似于钢笔写下的歌词,写错就擦不掉了,只能换纸重写。

  列表和元组的区别主要体现在以下几个方面:

  (1)列表属于可变序列,它的元素可以随时修改或者删除;元组属于不可变序列,其中的元素不可以修改,除非整体替换。

  (2)列表可以使用append()、extend()、insert()、remove()和pop()等方法实现添加和修改列表元素,而元组没有这几个方法,所以不能向元组中添加和修改元素。同样,元组也不能删除元素。

  (3)列表可以使用切片访问和修改列表中的元素。元组也支持切片,但是它只支持通过切片访问元组中的元素,不支持修改。

  (4)元组比列表的访问和处理速度快,所以当只是需要对其中的元素进行访问,而不进行任何修改时,建议使用元组。

  (5)列表不能作为字典的键,而元组则可以。

4.4 字典

  在Python中,字典与列表类似,也是可变序列,不过与列表不同,它是无序的可变序列,保存的内容是以“键-值对”的形式存放的。

  类似新华字典,可以把拼音和汉字关联起来,通过音节表可以快速找到想要的汉字,音节表相当于键(key),而对应的汉字相当于值(value)。键是唯一的,而值可以有多个。

1、字典的特征:

  (1)通过键而不是通过索引来读取

  字典有时也称为关联数组或者散列表(hash)。它是通过键将一系列的值联系起来的,这样就可以通过键从字典中获取指定项,但不能通过索引来获取。

  (2)字典是可变的,并且可以任意嵌套

  字典可以在原处增长或者缩短(无须生成一个副本)。并且它支持任意深度的嵌套(即它的值可以是列表或者其他的字典)。

  (3)字典中的键必须唯一

  不允许同一个键出现两次,如果出现两次,则后一个值会被记住。

  (4)字典中的键不可变

  字典中的键是不可变的,所以可以使用数字、字符串或者元组,但不能使用列表。

2、字典的创建和删除:

  定义字典时,每个元素都包含两个部分“键”和“值”。以水果名称和价格的字典为例,键为水果名称,值为水果价格。

  创建字典时,在“键”和“值”之间使用冒号分隔,相邻两个元素使用逗号分隔,所有元素放在一对“{ }”中。

dictionary={'key1':'value1','key2':'value2'...}
  dictionary:表示字典名称。
  key1、key2:表示元素的键,必须是唯一的且不可变,可以是字符串、数字或者元组。
  value1、value2:表示元素的值,可以是任何数据类型,不是必须唯一的。

  (1)创建一个通讯录的字典:

dictionary={'QQ':'','联系电话':'','住址':'北京'}
print(dictionary)

  (2)同列表和元组一样,也可以创建空字典,在Python中,可以使用下面两种方法创建空字典。

dictionary={}

dictonary=dict()

  Python中的dict() 方法除了可以创建一个空字典外,还可以通过已有数据快速创建字典,主要表现为以下两种方式:

  ①通过映射函数创建字典:

dictionary=dict(zip(list1,list2))
  dictionary:表示字典名称
  zip()函数:用于将多个列表或元组对应位置的元素组合为元组,并返回包含这些内容的zip对象。如果想获取元组,可以将zip对象使用tuple()函数转换为元组;
        如果想获取列表,则可以使用list()函数将其转换为列表。
verson1=["勇士","火箭","雷霆"]
verson2=["库里","哈登","保罗"]
verson=dict(zip(verson1,verson2))
print(verson)

  ②通过给定的”键-值对“创建字典

dictionary=dict(key1=value1,key2=value2...)
  dictionary:表示字典名称
  key1,key2:表示元素的键,必须是唯一的且不可变,例如可以是字符串、数字或者元组。
  value1,value2:表示元素的值,可以是任何数据类型,不是必须唯一的。
verson=dict(勇士='库里',火箭='哈登',雷霆='保罗')
print(verson)

  (3)在Python中,可以适应dict对象的fromkeys()方法创建值为空的字典:

dictionary=dict.fromkeys(list1)
dictionary:表示字典名称
list1:作为字典的键的列表
team=["开拓者","独行侠","76人","凯尔特人"]
dictionary=dict.fromkeys(team)
print(dictionary)

  (4)删除字典

  同列表和元组一样,不再需要的字典也可以使用del命令删除整个字典。

del diciionary    #dictionary表示字典名称

  另外,如果只想删除字典的全部元素,可以使用字典对象的clear()方法实现,执行clear()方法后,原字典将变为空字典。

dictionary.clear()

  还可以使用地点对象pop()方法删除并返回指定”键“的元素,以及使用字典对象的popitem()方法删除并返回字典中的一个元素。

3、通过键值对访问字典

  在使用字典时,很少直接删除它的内容,一般需要根据指定的键得到相应的结果。在Python中访问字典的元素可以通过下标的方式实现,与列表和元组不同,这里的下标不是索引号,而是键。

  使用if语句判断键是否存在。

  为了解决因键值不存在而抛出异常,可以为get()方法设置默认值,这样当指定的键不存在时,得到结果就是指定的默认值。

人生苦短,我用Python(4)的更多相关文章

  1. 人生苦短,我用Python(1)

    一.人生苦短,我用Python 在文章的开头给大家介绍一下Python语言,作者Guido von Rossum.对,就是图中的“人生苦短我用Python”那哥们.你可能以为我会用很多文字介绍Pyth ...

  2. 人生苦短之---认识Python

    认识 Python 人生苦短,我用 Python —— Life is short, you need Python 目标 Python 的起源 为什么要用 Python? Python 的特点 Py ...

  3. 初学者路径规划 | 人生苦短我用Python

    纵观编程趋势 人生苦短,我用Python,比起C语言.C#.C++和JAVA这些编程语言相对容易很多.Python非常适合用来入门.有人预言,Python会成为继C++和Java之后的第三个主流编程语 ...

  4. 人生苦短我用Python 第三周 函数周

    函数的定义: 1,def 函数名(参数1,参数2......): "注释:函数的作用和参数,增加可读性", 2,函数体 3,返回值 最简单的函数: def func(): prin ...

  5. 人生苦短,我用python(目录)

    一.python基础篇 python中闭包及延时绑定问题 python中的装饰器.生成器 二.前端 bootstrap框架 BOM&DOM JavaScript中的词法分析 三.数据库 mys ...

  6. 人生苦短,我用python

    星空不问赶路人,时光不负有心人,你可以脱变. 1.计算机的初步认识 2.解释器的安装 python2.7(2020年官方不在维护) python3.6 (官方推荐) 1.下载安装包 https://w ...

  7. 深度学习之美(张玉宏)——第四章 人生苦短我用python

    1 函数参数 (1)收集参数:以一个星号*加上形参名的方式,表示这个函数的实参个数不定,可能0个可能n个. def varParaFun(name,*param): print('位置参数是:',na ...

  8. 人生苦短我用Python,本文助你快速入门

    目录 前言 Python基础 注释 变量 数据类型 浮点型 复数类型 字符串 布尔类型 类型转换 输入与输出 运算符 算术运算符 比较运算符 赋值运算符 逻辑运算符 if.while.for 容器 列 ...

  9. 人生苦短 我用Python 第二周的第一天 (数据类型)

    数字:  整形  int  长整形(Python3里面把整形.长整形和到一起啦) 浮点型( float) 1.3 5.2 等等  科学技术发表示 1.3e-3=0.0013 e的代表10. bin是二 ...

  10. 一句话打印'*'图案(列表推导式, 人生苦短, 我用Python)

    ```python # coding=utf-8 print ('\n'.join(['*'*6 for i in range(4)])) # ****** # ****** # ****** # * ...

随机推荐

  1. 【Android内存机制分析】了解Android堆和栈

    昨天用Gallery做了一个图片浏览选择开机画面的功能,当我加载的图片多了就出现OOM问题.以前也出现过这个问题,那时候并没有深究.这次打算好好分析一下Android的内存机制. 因为我以前是做VC+ ...

  2. 3、.net core 部署到IIS

    1)下载对应的Hosting Bundle https://dotnet.microsoft.com/download/dotnet-core/2.2 2)VS发布项目,选择window平台环境 3 ...

  3. 第三期 行为规划——4.形式化FSM

    让我们考虑一个简单的自动售货机,其中一切花费20美分.假设这台自动售货机只需要镍和硬币,但没有更大或更小. 然后,我们可以模拟状态这台自动售货机以已存入的金额为准.起始状态将为零美分.有两种可能发生. ...

  4. 什么是CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI?

    https://mp.weixin.qq.com/s/Co1LxS2h_ILh9syOmshjZg 什么是CGI CGI全称是“公共网关接口”(Common Gateway Interface),HT ...

  5. 在SQL中number(16,5)中的16和5 及number( 5,-2)中的5和-2是什么意思?

    在SQL中number(16,5)中的16和5 及number( 5,-2)中的5和-2是什么意思? 2018-06-04 19:23:24 xiaonan_IT 阅读数 3672   版权声明:本文 ...

  6. Python--day65--Django框架介绍

    原文链接:http://www.cnblogs.com/liwenzhou/p/8296964.html 做web开发用的是MVC框架: Django框架简介 MVC框架和MTV框架(了解即可) MV ...

  7. Python--day48--ORM框架SQLAlchemy之子查询

    一定要把第一次查询的结果作为一个结果再进行查询:代码后面加.subquery()标明是子查询 1,简单的子查询 #select * from (select * from tb) as B q1 = ...

  8. Python--day47--内容回顾

    1.什么是数据库

  9. Python--day26--封装和@property

    ---恢复内容开始--- @property:修饰过的方法不能传任何参数,把方法伪装成属性,没有这个装饰就像c1.area()这样调用,少了一个括号,没什么用. @name.setter:实现可以修改 ...

  10. 用于数组的delete p324

    delete 对象地址; delete 首先调用待清除对象的析构函数,然后释放内存 如果delete一个void指针,唯一发生的事情就是释放了内存.因为通过void指针,无法知道对象的类型,就无法调用 ...