Day 04 列表,元祖,range
列表:
why:
1、字符串取值费劲
2、对字符串做任何操作,取出来的都是字符串
3、字符串有长度限制
基于以上原因,python提供了另一个数据类型,list 容器类数据类型。
列表页脚数组,可以存放不同的数据类型,而且可以存储大量数据
32位python的限制是 536870912 个元素,
64位python的限制是 1152921504606846975 个元素
而且列表是有序的,有索引值,可切片,方便取值。
使用列表:
1、索引, 切片 (步长)
2、增删改查
3、其他操作方法
用在哪些地方:
存储大量数据,并且保持原数据类型时,需要列表
安装顺序,或者按照一定规则存储数据
列表的使用:
索引,切片
l1 = ['wusir', 'alex', '日天', '太白', 100 ,'太白']
s1 = l1[1]
print(s1, type(s1))
i1 = l1[-1]
print(i1, type(i1))
l2 = l1[:3]
print(l2)
l3 = l1[:-4:-1]
print(l3)
增 append, inset, extend
1、append 只能加一个值,可以是字符串,数字,列表,字典,集合
l1 = ['wusir', 'alex', '日天', '太白', 100 ,'太白']
l2 = l1.append(' ')
print(l1) # ['wusir', 'alex', '日天', '太白', 100, '太白', ' ']
往列表中间加值:
name_list = []
while 1:
username = input('请输入姓名: ').strip()
if username.upper() == 'Q':
break
name_list.append(username)
print(name_list)
2、inset
l1 = ['wusir', 'alex', '日天', '太白', 100 ,'太白']
l1.insert(1, [1, 2, 3, 44]) # 索引+ 值(可以是任何数据类型)
print(l1)
3、extend
extend 迭代追加,如果是字符串,则将字符串的每一个字符,追加至列表。如果是字典,则只增加key到列表中
l1 = ['wusir', 'alex', '日天']
l1.extend('abc') # ['wusir', 'alex', '日天', 'a', 'b', 'c']
l1.extend(['alex', 'echo']) #['wusir', 'alex', '日天', 'alex', 'echo']
l1.extend({'name': 'echo', 'age': 18}) #['wusir', 'alex', '日天', 'name', 'age']
print(l1)
删: pop,remove,clear,del
pop: 只能根据索引取值,超出范围会报错
l1 = ['wusir', 'alex', '日天']
ret = l1.pop(0) # 按照索引删除,不支持切片
print(ret) # 有返回值
print(l1) # ['alex', '日天']
remove :
按照值
l1 = ['wusir', 'alex', '日天', 'wusir']
l1.remove('wusir') # 按照值删除列表,一次只能删除一个值
print(l1)
clear :清空列表里面的值,保留列表
l1 = ['wusir', 'alex', '日天', 'wusir']
l1.clear()
print(l1)
del
1,按照索引删除单个元素 与pop相同
2,按照切片删除一部分元素
3,按照切片(步长)删除一部分元素
l1 = ['wusir', 'alex', '日天', 'wusir']
del l1[-1]
print(l1)
del l1[-1]
print(l1)
del l1[:3]
print(l1)
del l1[:3:2]
print(l1)
改 :
1,按照索引改
2,按照切片改
3,按照切片(步长)改
l1 = ['wusir', 'alex', '日天', 'wusir', 'echo', 123]
l1[0:2] = 'abcd' # ['a', 'b', 'c', 'd', '日天', 'wusir']
print(l1) # 把[0],[1]删除,把'a','b','c','d'添加进去
l1[:3] = ['al', 'echo'] #['al', 'echo', 'wusir']
l1[:3:2] = '太白' # 如果是按步长取值,需要被替换的值必须和替换值个数相等
print(l1) # 替换[0],[2]两个值,'太白'也是两个值。如果两边不相等,则报错
查:
按照索引,按照切片
for i in l1:
print(i)
其他操作:
print(len(l1)) # 测试总个数
count # 计算某个元素出现的个数
print(l1.count('太白'))
index 通过元素找索引找第一个就返回,找不到就报错
sort 排列
l1 = [2, 7, 6, 5, 1, 8, 9]
l1.sort() #正序
print(l1) # [1, 2, 5, 6, 7, 8, 9]
l1.sort(reverse=True) #倒叙
print(l1) # [9, 8, 7, 6, 5, 2, 1]
l1.reverse() # 翻转排列
print(l1) # [9, 8, 1, 5, 6, 7, 2]
列表的嵌套:
l1 = [1, 2, 'taibai', [1, 'alex', 3]]
l1[2] = l1[2].upper() # 将'taibai'换成'TAIBAI' 用列表的改
print(l1) # [1, 2, 'TAIBAI', [1, 'alex', 3]]
l1[3].append('老男孩教育')
print(l1) # [1, 2, 'taibai', [1, 'alex', 3, '老男孩教育']]
l1[3][1] += 'sb' # 将'alex' 改成 'alexsb' 用列表的查和改
print(l1) # [1, 2, 'taibai', [1, 'alexsb', 3]]
元组:
用()表示,里面的数据无法修改 (子数据不能改,孙数据可能可以改)
用tuple表示
tu = (1, '太白', True, [1, 2, 3,] ,(1,2,),{'name':'alex'}, {1,2,3})
支持查,索引,切片,步长
range :
ret = range(1, 10) # 顾头不顾尾 l1 = [1, 2, 3, 4, 5, 6, 7 ,8, 9]
ret = range(1, 10, 2)
for i in ret:
print(i) # 1 3 5 7 9 支持切片,步长
#列表中含有别表,字典,打印所有值
l1 = [1, 2, 3, [44, 55],66, {'name':'echo', 'age': 18}]
for i in l1:
if type(i) == list:
for j in i:
print(j)
elif type(i) == dict:
for x in i:
print(x)
else:
print(i)
Day 04 列表,元祖,range的更多相关文章
- 列表 元祖 range
1.列表 list 存放一些数据的容器 比如 衣柜 书包 作用:存储一些数据,数据量比较大 可以下标 可以切片 可以步长 和字符串的完全一样 lst = [1,2,3] print(lst) #[1, ...
- Python学习day4 数据类型Ⅱ(列表,元祖)
day4 知识补充&数据类型:列表,元祖 1.知识补充 1.编译型/解释型 编译型:在代码编写完成之后编译器将其变成另外一个文件教给你算计执行. 代表语言:Java,c,c++ ,c#, Go ...
- Python学习笔记---切片 列表 元祖 字典 集合
列表[1,2,3,2]#[] 元祖(1,2,3,2)#() 字典{1:2,3:2}#{} 集合{1,2,3,2}#{} 1,集合与列表的区别,集合里不能有重复元素 2.字典与集合的区别,都是用花括号表 ...
- python-基础-字符串-列表-元祖-字典2
接上:http://www.cnblogs.com/liu-wang/p/8973273.html 3 元组 4 字典 4.1 字典的介绍 <2>软件开发中的字典 变量info为字典类型: ...
- python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...
- python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍
目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...
- python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍
目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...
- day 04 list,元祖
1,作业讲解 # s = '132a4b5c' # s1 = s[0]+s[2]+s[1] # print(s1) index = 0 # while 1: # print(s[index]) # i ...
- python 列表 元祖 集合
#####################概念#######################1,什么是列表: 列表由[]表示,里面每一项元素用逗号隔开,里面什么都可以装.能装对象的对象. 列表可以装大 ...
- python入门(五):切片列表元祖字典
1.切片 针对序列,使用切片可以获得我们想要的内容 序列:字符串.列表.元祖 特点:可以使用坐标获取某一个值.坐标是从0开始算 >>> s="0123456789" ...
随机推荐
- sqoop连接SqlServer2012示例
sqoop import --connect 'jdbc:sqlserver://192.168.xx.xx:1433;username=sa;password=xxxx;database=WindE ...
- Linux命令:索引
目录 A B C D E F G H I jobs J K L M N nohup O P Q R S T trU V W X Y Z A alias B C cd D dirs E F G ...
- TFS登录时保存了用户密码,如何用其他账户登录
来源:http://blog.csdn.net/littlegreenfrog/article/details/5254633 使用TFS2008过程中,常常由于已经保存用户名和密码,却没有重新登 ...
- [PHP]更新中间关联表数据的两种思路
---------------------------------------------------------------------------------------------------- ...
- C# windows服务:如何检测指定的Windows服务是否启动
public void CheckServerState(string ServiceName) { ServiceController[] service = ServiceController.G ...
- centos7.x修改网卡名字
1.编辑/etc/default/grub 加入如下代码 net.ifnames=0 biosdevname=0 2. 在执行以下 grub2-mkconfig -o /boot/grub2/gru ...
- Python基础学习Day3 数据类型的转换、int、str、bool、字符串的常用方法、for循环
一.数据类型的转换 常用的是:int 转str.str转int.int转bool 时 非零即为 True . # 数据类型之间转换 ***** # int <--> str str(i ...
- git gitlab 使用 提交代码解决冲突
1.更改完代码后,git push 发生错误 注: 此时,使用 git pull: 更新代码,git 会自动merge不同的更新, a. 如果git 自动merge成功,再进行 git push操作 ...
- java+selenium自动化实践
git+java+selenium+testng +maven+idea 1.git之代码维护(下载.分支切换.上传) 下载命令 "git clone git@github.com:Luna ...
- spring 事务传播
1.spring实现对事务的控制,使用的是代理的技术.通过生成的代理类来捕捉被代理类(也就是我们编写的类)的异常,决定事务的提交或回滚.从某一角度来说,spring事务是基于异常实现的.对于实现了接口 ...