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("年龄:") ...
随机推荐
- mysql添加远程权限
mysql -u root -p grant all privileges on *.* to root@'%' identified by "password"; flush p ...
- EF core (code first) 通过自定义 Migration History 实现多租户使用同一数据库时更新数据库结构
前言 写这篇文章的原因,其实由于我写EF core 实现多租户的时候,遇到的问题. 具体文章的链接: Asp.net core下利用EF core实现从数据实现多租户(1) Asp.net core下 ...
- 08-SpringMVC02
今日知识 1. 文件上传 2. ResponseBody和RequestBody 3. SpringMVC多视图 4. 静态资源的处理 文件上传 1. 导包,(commom.io , commons- ...
- Java开发最佳实践(二) ——《Java开发手册》之"异常处理、MySQL 数据库"
二.异常日志 (一) 异常处理 (二) 日志规约 三.单元测试 四.安全规约 五.MySQL数据库 (一) 建表规约 (二) 索引规约 (三) SQL语句 (四) ORM映射 六.工程结构 七.设计规 ...
- win7下彻底卸载和重装mysql
1 .目的:第一次安装完mysql后忘记了临时密码,通过各种途径都无法更改密码,因此不得不把mysql卸载了. 2 .建议:第一次安装mysql时会分配一个临时密码,如最后一行的se_:j<tq ...
- SpringBoot基础篇-SpringBoot快速入门
SpringBoot基础 学习目标: 能够理解Spring的优缺点 能够理解SpringBoot的特点 能够理解SpringBoot的核心功能 能够搭建SpringBoot的环境 能够完成applic ...
- css—动画(transform, transition, animation)
transform 静态属性,一旦写进style里面,会立即显示作用,无任何变化过程.(类似于left, right, top, bottom这类属性) 主要用来做元素的变形 改变元素样式的属性主要有 ...
- linux中vim常用操作
三种模式 # 命令模式 vim 文件名 # 插入模式 按a/i/o 进行插入模式 按esc 重新进入命令模式 # 编辑模式 按:(冒号)进入编辑模式 插入命令 命令 作用 a 在光标所在字符后插入 A ...
- jquery二级导航
效果图 直接放代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- 移动app
什么是移动App开发[重点] 苹果上的软件是如何开发出来的:使用IOS平台的开发工具和开发语言进行设计开发的!苹果上的开发语言:OC.Swift 安卓平台上的软件又是如何开发出来的:使用Java这么语 ...