python基础(五)列表,元组,集合
列表
在python中是由数个有序的元素组成的数据结构,每一个元素对应一个index索引来隐式标注元素在列表中的位置.是python中最常用的一种数据类型.需要注意的是列表中可以有重复相同的数据.
列表的常用操作:包括索引,切片,增删改查等.
#首先申明3个列表
list_all = ['22','sylar','22','open','4','sklfj','open',16,'sjk113','skf_kjdk','open','skj*&%)','f_s2df']
list_num = [1,4,7,3,5,4]
list_alp = ['axod','sccde','lsoM','JLKSI','KDIiid']
#切片,是用index来获取列表的某个或几个元素,其中多个元素用[start:end:step]来获取,index是从0开始,-1,-2来表示列表的最右的后几位
print(list_all[0])
print(list_all[2:10:2])
print(list_all[7:-1])
print(list_all[7:])
print(list_all[:7])
#append 在列表末尾添加一个值
list_alp.append('append')
print(' append 方法--->:',list_alp)
#count 记录一个值在列表中出现的次数
print(' count 方法--->:',list_all.count('open'))
#copy复制一个列表
l_copy = list_all.copy()
print(l_copy)
#clear清空列表
print(l_copy.clear())
#extend将两个表合并
list_all.extend(list_num)
print(' extend 方法--->:',list_all)
#insert插入一个元素,可以指定index来确定元素的位置
list_alp.insert(2,'sylar')
print(' insert 方法--->:',list_alp)
#index ,打印列表中某个值的index
print(' index 方法--->:',list_all.index('a'))
#pop 删除列表中的元素,默认是最后一个
print(' pop 方法--->:',' pop--->:',list_all.pop(),' list_all--->:',list_all)
print(' pop 方法--->:',' pop--->:',list_all.pop(0),' list_all--->:',list_all)
#remove 删除列表中找到的值,如果有相同的只删除找到的第一个,如果值不存在会引发一个错误
print(' remove 方法--->:',list_all.remove('open'),' list_all--->:',list_all)
#reverse 将列表的元素进行反向排序
print(' reverse 方法--->:',list_all.reverse(),list_all)
#sort按照ASCII码给列表排序
print(' 方法--->:',list_all.sort(),list_all)
#补充:一个循环列表比较好用的函数enumerate,可以快速获取列表的元素和对应的index
for index,item in enumerate(list_all):
print(index,item)
#或者:
for index,item in enumerate(list_all,1):
print(index,item)
元组
与列表类似的一个数据结构,不同在于元组的元素不能修改.需要注意的是元组的元素不能修改,但是元组的元素的元素是可以修改的.
元组的常用操作切片和列表一样,只是没有了修改元素的方法
#申明元组
tup1 = (1,2,3,['a','a', 'b'])
#切片
print(tup1[0])
print(tup1[0:8:2])
print(tup1[3:-1])
print(tup1[3:])
print(tup1[:3])
#index获取元素的index值
print(tup1.index(2))
#count对相同元素进行统计
print(tup1.count(5))
#补充 元素的元素可以修改,深浅copy的经典案例
tup1[-1][1] = 'c'
print(tup1)
集合
由多个无序且不重复的多个元素组成数据结构.所以集合也没有index.通常用来做去重和关系测试工作!集合也是无序的
#申明集合使用set函数.可以是列表元组字符串等数据类型,
set_test1 = set(list_num)
print(set_test1)
set_test2 = set([2,4,45,43,3,6,0,98,9,7,6])
print(set_test2)
set_test3 = set('sylar')
print(set_test3)
set_test4 = set([1,3,5])
print('set4',set_test4)
#集合常用操作,增删和关系测试
#add添加元素
set_test1.add(45)
print(set_test1)
#copy,复制
set_copy = set_test1.copy()
print(set_copy)
#clear清空
set_copy = set_copy.clear()
print(set_copy)
#difference差集,在set_test1中有在set_test2没有
a = set_test1.difference(set_test2)
print(a)
#intersection交集,在set_test1中有在set_test2也有的.
a = set_test1.intersection(set_test2)
print(set_test1 & set_test2)
print(a)
#isdisjoint,在set_test4和set_test5中都没有相同的元素.则返回True,反之
set_test5 = set([2,4,6])
a = set_test4.isdisjoint(set_test5)
print(a)
#issuperset父集issubset子集,判断一个集合是不是另外一个集合的父集或者子集.返回值True或者False
a = set_test1.issuperset(set_test4)
print(a)
a = set_test4.issubset(set_test1)
print(a)
#pop删除并返回任意一个元素
a = set_test1.pop()
print(a)
#remove删除指定元素
print(set_test1.remove(7))
#symmetric_difference对称差集,去除两个集合中都有的元素之后的结果
print(set_test1.symmetric_difference(set_test2))
#union并集两个集合组合到一起的结果
print(set_test1.union(set_test2))
#update只能把可迭代的对象加入原集合
set_test1.update(set_test5)
print(set_test1)
#数学运算符&交集,|并集,- 差集,^ 对称差集
print(set_test1 & set_test2)
print(set_test1 | set_test2)
print(set_test1 - set_test2)
print(set_test1 ^ set_test2)
补充上面3种数据结构都可以使用的
#in判断元素是否在集合中
for i in set_test2:
print(i)
if 0 not in list_num:print('yes')
python基础(五)列表,元组,集合的更多相关文章
- Python基础2 列表 字典 集合
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...
- 【python基础】之元组 集合 字典
元组 元组:元组和列表类似.但是元组中的元素是固定的(不能给一个元组添加,删除和替换元素以及重新排序) 1.创建元组 t1 = () #创建一个空元组 t2 = (1, 2, 3) t3 = tupl ...
- Python基础知识--列表和集合
列表:有序性,可以存放任意类型的对象,通过索引访问,可以分片操作 >>> L = ['id', 1000, 'scd', 1000, 'scd'] >>> L [' ...
- Python基础数据类型-列表(list)和元组(tuple)和集合(set)
Python基础数据类型-列表(list)和元组(tuple)和集合(set) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的 ...
- python基础之列表list元组tuple
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7041763.html python基础之列表list元组tuple 列表li ...
- python基础语法3 元组,字典,集合
元组: ========================元组基本方法===========================用途:存储多个不同类型的值定义方式:用过小括号存储数据,数据与数据之间通过逗号 ...
- python基础数据类型--列表(list)
python基础数据类型--列表(list) 列表是我们在后面经常用到的数据类型之一,通过列表可以对数据类型进行增.删.改.查等操作 一列表的增.删.改.查 1增: 1.1增加到最后 append ...
- 初学Python(五)——元组
初学Python(五)——元组 初学Python,主要整理一些学习到的知识点,这次是元组. #-*- coding:utf-8 -*- #定义元素 t = (1,2,3) #添加元素 #删除元素 #更 ...
- python的学习笔记01_4基础数据类型列表 元组 字典 集合 其他其他(for,enumerate,range)
列表 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问 ...
随机推荐
- 后台返回json可能会出现的异常解析:java.lang.IllegalStateException: WRITER
在使用filter做权限管理限制访问时,经常是在数据可以正确返回时,在后台日志中却有这个异常抛出,这个现象让人不禁想去一探究竟. 我要做的是在一个filter中拦截所有的请求,并且根据拿到的请求中的参 ...
- 自学Zabbix3.1-语言切换
题记: 默认使用的zabbix版本为Zabbix 3.0.8 登陆到zabbix web控制台默认是英文界面,对有些英文不好或者习惯中文的人来说会有不适应. 实际上是切换到中文版本,步骤:点击用户 ...
- 【CSS3】布局
浮动布局: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <tit ...
- iOS sourceTree忽略掉必要的xcuserdata文件
1.找到git对应的文件 git status 结果 会得到已经修改的文件. modified: Zing.xcodeproj/xcuserdata/tiny.xcuserdatad/xcscheme ...
- 常规流(Normal flow)
连我自己把float和绝对定位,都称为脱离文档流,想想概念又不那么清晰,于是寻找了W3C资料来理解,才发觉不应该叫文档流. 资料 英文:https://www.w3.org/TR/CSS22/visu ...
- linux下增加磁盘改变指定文件路径分区挂载点和迁移数据
Centos7 系统上原有目录/data 挂载根目录下,空间有点小,我们需要把/data目录挂载到另一个磁盘,同时把数据迁移. 1.查看分区情况 fdisk -l 2.查看路径对应分区情况 df -l ...
- 496. Next Greater Element I
You are given two arrays(without duplicates)nums1andnums2wherenums1's elements are subset ofnums2. F ...
- bzoj 4872: [Shoi2017]分手是祝愿
Description Zeit und Raum trennen dich und mich. 时空将你我分开.B 君在玩一个游戏,这个游戏由 n 个灯和 n 个开关组成,给定这 n 个灯的初始状态 ...
- bzoj 1196: [HNOI2006]公路修建问题
Description OI island是一个非常漂亮的岛屿,自开发以来,到这儿来旅游的人很多.然而,由于该岛屿刚刚开发不久,所以那里的交通情况还是很糟糕.所以,OIER Association组织 ...
- nova创建虚拟机源码分析系列之一 restful api
开始学习openstack源码,源码文件多,分支不少.按照学习的方法走通一条线是最好的,而网上推荐的最多的就是nova创建虚机的过程.从这一条线入手,能够贯穿openstack核心服务.写博文仅做学习 ...