python学习之路08——元组、集合
一. 元组
1、概念
元组和列表的区别:
a.列表:[] 元组:()
b.列表中的元素可以进行增加和删除操作,但是,元组中的元素不能进行修改
c.相同点:都是一种容器,都可以同时存储 不同类型的数据
2.创建元组
#1.创建空元组
tuple1 = ()
#2.创建带有元素的元组
tuple2 = (10,20,30)
#3.和列表类似,在元组中可以存储重复元素
tuple3 = (10,20,10,30,10)
print(tuple3)
#4.和列表类似,在同一个元组中国可以同时存储不同类型的数据
tuple4 = ("hello",True,10)
#5.特殊情况:如果创建的元组中只有一个元素,使用逗号消除歧义
tuple5 = (10)
print(tuple5)
tuple5 = 10
print(tuple5)
#为了消除歧义,修改
tuple5 = (10,)
print(tuple5)
3.元组的访问
代码演示:
tuple1 = (10,20,30,40,50)
#1.获取元素值
print(tuple1[1])
#获取元组中的最后一个元素
print(tuple1[4])
#注意:索引为正数表示从前往后获取,负数表示从后往前获取,-1表示元组中的最后一个元素
print(tuple1[-1])
print(tuple1[-2])
#索引越界
#print(tuple1[5]) #IndexError: tuple index out of range
#print(tuple1[-6]) #IndexError: tuple index out of range
#2.修改元素值
#和列表不同的地方:元组中的元素不能进行随意的更改
#tuple1[2] = 100
print(tuple1) #TypeError: 'tuple' object does not support item assignment
#特殊情况:元组中的元素不能随意更改,本质指的是不能更改地址
tuple2 = (1,3,43,5,[54,54,5])
print(tuple2)
list1 = tuple2[4]
list1[1] = 100 #可以更改,因为列表的地址没变
print(tuple2)
"""
(1, 3, 43, 5, [54, 54, 5])
(1, 3, 43, 5, [54, 100, 5])
"""
#3.删除元组
del tuple2
4.元组的操作
#1.获取元组中元素的个数 #2.获取元组中元素的最大值和最小值
二.集合
1、概念
特点;不允许有重复元素,可以进行交集,并集或者差集的计算
set和dict类似,和dict的区别在于:set相当于只是存储了key的集合
本质:无序且无重复元素的集合
2.集合的创建
set的创建没有特有的符号,主要是通过list,tuple,dict进行创建
3.集合的操作
#2删除remove()
#3遍历的时候直接遍历
#4交集和并集
s4 = set([43,54,5,6])
s5 = set([545,4,65,6,75])
#交集:&【按位与】 and
r1 = s4 & s5
print(r1)
print(type(r1))
#并集:|【按位或】 or
r2 = s4 | s5
print(r2)
python学习之路08——元组、集合的更多相关文章
- Python学习之路——Day06 元组
一.元组 t1 = (1, 2) t2 = tuple((1, 2)) t3 = (1, ) # 索引 | 切片 | 长度 # .count(obj) | .index(obj, bIndex, eI ...
- python学习之路-day2-pyth基础2
一. 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...
- Python学习之路-Day2-Python基础3
Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...
- Python学习之路-Day2-Python基础2
Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...
- Python学习2-列表和元组
Python学习2-列表和元组 标签(空格分隔): 列表 元组 在Python中,最基本的数据结构是序列(sequence).序列中的每个元素被分配一个序号--即元素的位置,也称为索引.索引从0开始. ...
- Python学习之路-Day1-Python基础
学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...
- python学习之路网络编程篇(第四篇)
python学习之路网络编程篇(第四篇) 内容待补充
- Python学习之路【第一篇】-Python简介和基础入门
1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...
- python 学习之路开始了
python 学习之路开始了.....记录点点滴滴....
随机推荐
- 虚拟主机、VPS、ECS云服务器 区别
在阿里云上买了个云服务器. ssh命令都没通,找服务端同事帮我看,说我买错了.应该买ECS. 1.虚拟主机 虚拟主机就是利用虚拟化的技术,将一台服务器划分出一定大小的空间,每个空间都给予单独的 FTP ...
- CSS布局学习(二) - flex属性
flex属性 定义 flex布局包括最外层的容器和内部的元素,flex属性是内部元素属性.flex属性是flex-grow, flex-shrink, flex-basis三个属性的简写 flex-g ...
- npm发包注意
ES6语法的包需要转换为ES5语法 安装bebel npm install --save-dev babel-cli babel-preset-es2015 babel-preset-es2017 b ...
- ugui 灰度shader mask冲突解决 转。。。
项目上遇到了一个问题,灰度shader无法在mask下使用,两个之间会一定的冲突.经查验是mask组件对shader的相关属性有要求,添加相关的属性则可符合要求使其他shader使用UGui里的mas ...
- [python](windows)分布式进程问题:pickle模块不能序列化lambda函数
运行错误:_pickle.PicklingError: Can't pickle <function <lambda> at 0x000002BAAEF12F28>: attr ...
- Lab 6-3
In this lab, we'll analyze the malware found in the file Lab06-03.exe. Questions and Short Answers C ...
- Confluence 6 服务器硬件要求指南
服务器管理员可以通过本页面的指南来对在运行 Confluence 评估版本的最小服务器硬件需求进行评估.应为实际的服务器负载是很难进行预测的,所以最好的办法是通过实际运行一个 Confluence 实 ...
- yii2 adminlte后台搭建
加载第三方扩展, composer require dmstr/yii2-adminlte-asset "2.*" composer require mdmsoft/yii2-ad ...
- 完整的Django入门指南学习笔记6
前言 欢迎来到系列教程的第六部分!在这篇教程中,我们将详细探讨基于类的视图(简称CBV).我们也将重构一些现有的视图,以便利用内置的基于类的通用视图(Generic Class-Based Views ...
- openssl dgst(生成和验证数字签名)
openssl系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 该伪命令是单向加密工具,用于生成文件的摘要信息,也可以进行数字签名,验证数字 ...