Python的列表和元组
一、什么是列表
1.列表是一个可变的数据类型,它由[]表示,其中的每一项元素使用“,”逗号隔开,可以储存各种数据类型。列表相比于字符串,可以存放大量数据类型,其是有序的,有索引,可以使用切片,方便取值。
2.列表的索引的下表也是从0开始的,切出来的内容为列表。[起始位置:结束位置:步长]
二、列表的“增删改查”
1.增加
list相比于str另一个更为方便的是,list可以发生改变,我们可以直接在原来的对象上进行操作
1)append() 在原字符串的末尾添加一个数据
>>>stars_list = ["周杰伦", "那英", "庾澄庆", "杨坤"]
>>>stars_list.append('林俊杰')
>>>print(stars_list)
['周杰伦', '那英', '庾澄庆', '杨坤', '林俊杰']
2)insert() 在xxx位置插入xxxx内容
>>>stars_list = ["周杰伦", "那英", "庾澄庆", "杨坤"]
>>>stars_list.insert(1, '林俊杰')
>>>print(stars_list)
['周杰伦', '林俊杰', '那英', '庾澄庆', '杨坤']
3)extend() 可进行迭代添加
>>>stars_list = ["周杰伦", "那英", "庾澄庆", "杨坤"]
>>>stars_list.extend(["邓紫棋", "金玟岐", "张信哲"])
>>>print(stars_list)
['周杰伦', '那英', '庾澄庆', '杨坤', '邓紫棋', '金玟岐', '张信哲']
2.删除(使用的列表同上)
1)pop() 删除索引指向的数据,可以返回被删除的数据
>>>stars_list.pop(2)
>>>print(stars_list)
['周杰伦', '那英', '杨坤']
2)remove() 删除指定元素,如果不存在则报错
>>>stars_list.remove('周杰伦')
>>>print(stars_list)
['那英', '庾澄庆', '杨坤']
3)del 将列表进行切片删除
>>>del stars_list[1:3]
>>>print(stars_list)
['周杰伦', '杨坤']
4)clear() 将列表清空
>>>stars_list.clear()
>>>print(stars_list)
[]
3.修改(使用的列表同上)
1)索引修改
>>>stars_list[1] = '梁静茹'
>>>print(stars_list)
['周杰伦', '梁静茹', '庾澄庆', '杨坤']
2)切片修改
>>>stars_list[1:] = ['本兮']
>>>print(stars_list)
['周杰伦', '本兮']
>>>stars_list[::2] = ['本兮', '毛不易']
>>>print(stars_list)
['本兮', '那英', '毛不易', '杨坤']
4.查询(使用的列表同上)
>>>for s in stars_list:
print(s)
周杰伦
那英
庾澄庆
杨坤
三、列表的常用操作
1.sort() 将列表排序,参数reverse=True为降序
>>>num_list = [5, 31, 3, 6, 4, 15, 23, 7]
>>>num_list.sort()
>>>print(num_list)
[3, 4, 5, 6, 7, 15, 23, 31]
>>>num_list.sort(reverse=True)
>>>print(num_list)
[31, 23, 15, 7, 6, 5, 4, 3]
2.reverse() 翻转
>>>stars_list = ["周杰伦", "那英", "庾澄庆", "杨坤"]
>>>stars_list.reverse()
>>>print(stars_list)
['杨坤', '庾澄庆', '那英', '周杰伦']
3.len() 求列表长度
>>>stars_list = ["周杰伦", "那英", "庾澄庆", "杨坤"]
>>>print(len(stars_list))
4
4.列表的嵌套
采用降维操作,一层一层的看
>>>stars_list = ["周杰伦", "那英", "庾澄庆", "杨坤"]
>>>print(isinstance(stars_list, list))
True
isinstance(object, classinfo)如果参数object是classinfo的实例,或者object是classinfo类的子类的一个实例, 返回True。如果object不是一个给定类型的的对象, 则返回结果总是False。
四、元组
元组相当于只读列表,只能查找元素,使用()表示元组,如果元组中只有一个元素,使用(元素,)表示,空元组用tuple()表示,元组也是一个可迭代对象,可以使用for循环。
1.range()
range(n) 从0到n-1
range(m, n) 从m到n-1
range(m, n, q) 从m到n-1每q个取1个元素
2.使用range和for循环获取列表中的索引
for i in range(len(列表)):
print(i) # i就是列表的索引
注意:元组中只有一个元素时,需要保留一个逗号。('周杰伦',)
Python的列表和元组的更多相关文章
- Python基础------列表,元组的调用方法
Python基础------列表,元组的调用方法@@@ 一. 列表 Python中的列表和歌曲列表类似,也是由一系列的按特定顺序排列的元素组成的,在内容上,可以将整数,实数,字符串,列表,元组等任何类 ...
- Python中列表,元组,字典,集合的区别
参考文档https://blog.csdn.net/Yeoman92/article/details/56289287 理解Python中列表,元组,字典,集合的区别 列表,元组,字典,集合的区别是p ...
- Python基础-列表、元组、字典、字符串
Python基础-列表.元组.字典.字符串 多维数组 nums1 = [1,2,3] #一维数组 nums2 = [1,2,3,[4,56]] #二维数组 nums3 = [1,2,3,4,['a ...
- python:列表与元组
1.python包含六种内建的序列,列表和元组是其中的两种,列表可以修改,元组则不能 2.通用序列操作 2.1 索引:和C#的区别是索引可以为负数,最后一个元素索引为-1,索引超出范围会报错 例:&g ...
- python中列表,元组,字符串互相转换
列表,元组和字符串python中有三个内建函数:,他们之间的互相转换使用三个函数,str(),tuple()和list(),具体示例如下所示 >>> s = "xxxxx& ...
- Python基础-列表_元组_字典_集合
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...
- Python自动化 【第二篇】:Python基础-列表、元组、字典
本节内容 模块初识 .pyc简介 数据类型初识 数据运算 列表.元组操作 字符串操作 字典操作 集合操作 字符编码与转码 一.模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库, ...
- Python:列表,元组
一.列表 和字符串一样,列表也是序列类型,因此可以通过下标或者切片操作访问一个或者多个元素.但是,不一样的,列表是容器类型,是可以进行修改.更新的,即当我们进行修改列表元素,加入元素等操作的时候,是对 ...
- python中列表,元组,字符串如何互相转换
python中有三个内建函数:列表,元组和字符串,他们之间的互相转换使用三个函数,str(),tuple()和list(),具体示例如下所示: >>> s = "xxxxx ...
- Python学习--列表和元组
在python中,最基本的数据结构是序列.序列中的每个元素被分配一个序号--即元素的位置,也称为索引.第一个索引是0. python包含6种内建的序列:列表.元组.字符串.Unicode字符串.buf ...
随机推荐
- CentOS7安装部署zabbix3.4操作记录
CentOS7安装部署zabbix3.4操作记录 1.安装前准备 1.1 查看centos的系统版本 [root@zabbix ~]# cat /etc/redhat-release CentOS L ...
- 虚拟机中安装centOS及破解nuke的方法
跟the foundry的工程师邮件交流,我的一个Nuke脚本在对方机器上执行有问题,确认对方是centOS之后我决定在自己机器上安装一个centOS来找一下问题所在.安装重点如下: 一: 一定要下载 ...
- Django 链接mysql
第一步:settings.py DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'testdjango ...
- 宝塔linux面板运行jsp文件的配置工作
第一步宝塔安装和软件安装我们先安装宝塔面板(这个不需要我说咋弄吧) 安装完成后登录到宝塔面板然后安装软件我个人喜欢nginx最新版,mysql由于服务器配置很菜所以没发装56,php什么的我用不到就没 ...
- ThreadPoolExecutor简单学习
Executors和ThreadPoolExecutor两者的区别和联系 jdk中文文档 https://blog.fondme.cn/apidoc/jdk-1.8-google/ 还可以的两个博客 ...
- 【springBoot】之定制Banner
springboot启动时控制台打印图案如下: 1.假如我们不想看到这个图案 public static void main(String[] args) { SpringApplication ap ...
- C++进阶--自定义new handler
//############################################################################ // 自定义new handler /* ...
- 【并发编程】使用BlockingQueue实现<多生产者,多消费者>
MasterThread: 持有一个BlockingQueue队列,用于并发接收存储MetaData对象; 使用Hash一致性算法ketama,来选择SlaveThread节点; 从Blocking ...
- Kubernetes1.8以后kubelet连接api-server问题
Kubernetes1.8以后版本,kubelet命令去掉--api-servers选项,参考官方kubelet 1.8 --kubeconfig string Path to a kubeconfi ...
- flume-拦截器、channel选择器、sink组合sink处理器
1. Flume Interceptors Flume有能力修改/删除流程中的events.这是在拦截器(interceptor)的帮助下完成的.拦截器(Interceptors)是实现org.apa ...