python之路(列表,元组)
列表
list:基础数据类型之一,可以索引,切片,步长,切片+步长可以增删改查,可迭代,可嵌套字典,元组,列表
一、索引,切片,步长
list01 = [1,2,3,'eric','west']
1.索引
fz = list01[0]
print(fz)
result:1
反向查找
print(list01.index(1))
result:2
2.切片
fz = list01[:3]
result:[1,2,3]
fz = list01[1:4]
result:[2,3,'eric']
3.步长
fz = list01[::2]
result:[1,3,'west']
fz = list01[1:4:2]
result:[2,'eric']
fz = list01[-1:1:-2]
result:['west',3]
二、增删改查
1.增
append:再尾部增加单个元素
list01.append('xixi')
result:[1, 2, 3, 'eric', 'west', 'xixi']
extend:迭代增加
list01.extend('xixi')
result:[1, 2, 3, 'eric', 'west', 'x', 'i', 'x', 'i']
list01.extend(['xixi','love'])
result:[1, 2, 3, 'eric', 'west', 'xixi', 'love']
insert:指定位置增加元素
list.insert(1,'abby')
2.删
pop:按照索引删除元素,并且有返回值
list01.pop(1)
result:[1, 3, 'eric', 'west']
remove:按照元素删除
list01.remove('eric')
result:[1,2,3,'west']
clear:清空
list01.clear()
result:[]
del:可以按照索引删除,切片删除,内存级别删除整个列表
del list01[0]
result:[2,3,'eric','west']
del list01[3:]
result:[1,2,3]
del list01
result:name 'list01' is not defined
3.改
按索引改
list[2]='abby'
result:[1, 2, 'abby', 'eric', 'west']
按切片改
list[:2]='xi'
result:['x', 'i', 3, 'eric', 'west']
按切片+步长一一对应
list01[:3:2]='xi'
result:['x', 2, 'i', 'eric', 'west']
4.查
for循环
for i in list01:
print(i)
三、其他方法
查询总个数:print(len(list01))
查询某个元素出现次数:print(list01.count('eric'))
排序:
sort(从小到大):
list02 = [2,3,4,9,8,5,6,7]
list02.sort()
print(list02)
result:[2, 3, 4, 5, 6, 7, 8, 9]
sort(从大到小):
list02.sort(reverse=True)
print(list02)
result:[9, 8, 7, 6, 5, 4, 3, 2]
反转:
list02.reverse()
print(list02)
result:[7, 6, 5, 8, 9, 4, 3, 2]
列表与列表可以相加
l1 = [1,2,3]
l2 = ['alex','wusir']
l3 = l1 + l2
print(l3)
result:[1, 2, 3, 'alex', 'wusir']
应用演示:
l1 = [11, 22, 33, 44, 55, 66, 77, 88]
将列表中索引为奇数的元素,全部删除
方法一:切片+步长删除
del l1[1::2]
print(l1)
result:[11, 33, 55, 77]
方法二:
for i in range(len(l1)):
print(l1)
print(i)
if i % 2 == 1:
l1.pop(i)
print(l1)
print(i)
print(l1)
result:pop index out of range
在循环一个列表时,如果对列表中的某些元素进行删除,那么此元素后面的所有元素就会向前进一位,他们的索引就会发生变化。
所以,在循环一个列表时,最好不要对此列表进行改变大小(增删)的操作。
元组
tuple:基础数据类型之一,可以索引,切片,步长,切片+步长,只可以查,可迭代,可嵌套字典,元组,列表,嵌套列表字典可以修改
list01 = (1,2,3,'eric','west')
一、索引,切片,步长
1.索引
print(list01[0])
result:1
反向查找:
print(list01.index(1))
result:0
2.切片
fz=list01[1:3]
result:(2,3)
3.切片+步长
fz=list01[1::2]
result:(2,'eric')
二、查
for循环
for i in list01:
print(i)
其他:
字符串:
upper lower 变大写,变小写
strip:默认去除去除首位的空格,换行符,制表符,lstrip()去首部,rstrip()去尾部,strip(元素)可指定去除元素
startswith endswith 判断以...开头,结尾 一般用于if
find 通过元素找索引,找不到返回-1
replace 替换 (old,new,次数)
captilize() 首字母大写,其余的变成小写。
center():居中可设置填充物。
swapcase():大小写反转
isalnum(): 全部由字母或数字组成。
isalpha():全部由字母组成
isdigit(): 判断字符串是否全部有数字组成
len(): 统计字符串的字符的个数
title: 每个非字母隔开的内容的首字母大写
split:
'alex wusir'.split() ---> ['alex','wusir']:可以指定分隔符。
' alex wusir'.split('') ---> ['','alex','wusir']:可以指定分割次数。
join:'_'.join(interable)
如果元组中只有一个数据,且没有逗号,则该 '元组' 与里面的数据的数据类型相同。
tu1 = (1,)
tu2 = ('alex')
tu3 = ([1,2,3],)
print(tu1,type(tu1))
print(tu2,type(tu2))
print(tu3,type(tu3))
result:
(1,) <class 'tuple'>
alex <class 'str'>
([1, 2, 3],) <class 'tuple'>
python之路(列表,元组)的更多相关文章
- python基础(五)列表,元组,集合
列表 在python中是由数个有序的元素组成的数据结构,每一个元素对应一个index索引来隐式标注元素在列表中的位置.是python中最常用的一种数据类型.需要注意的是列表中可以有重复相同的数据. 列 ...
- 百万年薪python之路 -- 列表
1.列表(list)-- list关键字 列表是python的基础数据类型之一,有顺序,可以切片方便取值,它是以[ ]括起来, 每个元素用' , '隔开而且可以存放各种数据类型(字符串,数字,布尔值, ...
- python之路-列表、元组、range
一 . 列表 # 列表的定义 列表就是能装对象的对象 在python中用[ ]来描述列表,内部元素用逗号隔开,对数据类型没有要求 索引和切片 lst = ["天龙八部", &quo ...
- python记录_day04 列表 元组
今日主要内容: 列表 和 元组 列表 一.列表介绍 列表是一种能存储大量数据的数据结构,是能装对象的对象.由方括号 [] 括起来,能放任意类型的数据,数据之间用逗号隔开 列表存储数据是有顺序的 二.增 ...
- Python之路----列表推导式和生成器的表达式
列表推导式 egg_list=['鸡蛋%s'%i for i in range(10)] print(egg_list) 列表推导式 推导过程 egg_list = [] for i in range ...
- python 序列结构-列表,元组,字典,字符串,集合
列表 """ name_list.__add__( name_list.__getslice__( name_list.__new__( name_list.append ...
- python 学习分享-列表元组篇
1 列表(list) 下面的代码就是把一个变量赋值为列表 a=['laay','aay','ay','y'] 列表中存在索引,可以通过索引来访问列表中的值,也可以通过索引完成切片 print(a[0] ...
- python学习之列表元组,字典
list:元素性质可以不一致,元素还可以是list,可类似数组方法进行索引(也可以用负数索引,-1表示最后一个),可用.append('')进行动态增加,可用pop()删除最后一个或者pop(i)删除 ...
- Python初学笔记列表&元组&字典
一.从键盘获取 1 print("请输入") 2 username = input("姓名:") 3 age = input("年龄:") ...
随机推荐
- Linux学习2-云服务器上安装java和tomcat环境
在linux上部署java的项目,首先要安装JDK和Tomcat,具体要求怎么操作呢,我们一起来学习吧! JDK的安装步骤如下: 1.首先我们从官网下载jdk-8u231-linux-x64.rpm安 ...
- python学习(1)python的基本概念
1.python是世界上最流行的程序语言之一,用途广泛. 2.python是解释型语言,与C++编译类语言相比,python扩展性强,简单易上手.但是缺点也很明显,执行速度慢. 3.python定义中 ...
- Spark RDD基本概念、宽窄依赖、转换行为操作
目录 RDD概述 RDD的内部代码 案例 小总结 转换.行动算子 宽.窄依赖 Reference 本文介绍一下rdd的基本属性概念.rdd的转换/行动操作.rdd的宽/窄依赖. RDD:Resilie ...
- VFP调整本机日期时间与服务器日期时间一致
*!*调整本机日期时间与服务器日期时间一致( YYYY-MM-DD HH:MM:SS.FFF )*!*以下cSqlStr及nCon为SQL查询串及连接句柄cSqlStr="Select Sy ...
- Python 实现转堆排序算法原理及时间复杂度(多图解释)
原创文章出自公众号:「码农富哥」,欢迎转载和关注,如转载请注明出处! 堆基本概念 堆排序是一个很重要的排序算法,它是高效率的排序算法,复杂度是O(nlogn),堆排序不仅是面试进场考的重点,而且在很多 ...
- Cobalt Strike生成后门
Cobalt Strike生成后门 1.Payload概念 Payload在渗透测试之中大家可以简单地理解为一段漏洞利用/植入后门的代码或程序. 2.Cobalt Strike生成后门 攻击--> ...
- Flutter Widgets 之 FutureBuilder
注意:无特殊说明,Flutter版本及Dart版本如下: Flutter版本: 1.12.13+hotfix.5 Dart版本: 2.7.0 展示异步任务状态 当有一个Future(异步)任务需要展示 ...
- Webpack之(progressive web application) - PWA中的 Service Workers 是什么
学习文档:https://webpack.docschina.org/guides/progressive-web-application/ 参考文档:https://developers.googl ...
- Yet Another Broken Keyboard[双指针]
题目大意: 求贡献,已知公式n*(n+1)/2,求总和 收获: long long的转换技巧只能在乘或除上进行 题目链接 #include<bits/stdc++.h> typedef l ...
- 你一定看得懂的 DDD+CQRS+EDA+ES 核心思想与极简可运行代码示例
前言 随着分布式架构微服务的兴起,DDD(领域驱动设计).CQRS(命令查询职责分离).EDA(事件驱动架构).ES(事件溯源)等概念也一并成为时下的火热概念,我也在早些时候阅读了一些大佬的分析文,学 ...