list列表简介:列表是python的基础数据类型之⼀ ,其他编程语⾔也有类似的数据类型. 比如JS中的数
组, java中的数组等等. 它是以[ ]括起来, 每个元素⽤' , '隔开⽽且可以存放各种数据类型:。

lst = [1, 'GG', "MM", [1,666,0,"嘻嘻"]

  tuple元组简介:俗称不可变的列表.⼜被成为只读列表, 元组也是python的基本数据类型之⼀, ⽤⼩括
号括起来, ⾥⾯可以放任何数据类型的数据, 查询可以. 循环也可以. 切片也可以. 但就是不能改.

tu = ("x=1","y=2")

一、列表的索引的切片

  列表的索引和切片与字符串的索引切片一样:list[索引号 ]

lst = ["麻花藤", "王剑林", "⻢芸", "周鸿医", "向华强"]
print(lst[0]) # 获取第⼀个元素

  列表的切片

lst = ["华仔", '赫本', '赵四', "孙艺珍", '车太贤']
print(lst[3][1]) # 索引拿到的是元素
print(lst[-3])

二、列表的增

  1、list.append("元素")  表示在列表后面新增一个元素,添加到末尾------------------追加

lst = ["西红柿首富","无双", "影", "超能泰坦"]
lst.append("楚留香传奇") # 可变的数据类型 没有返回值
print(lst)#['西红柿首富', '无双', '影', '超能泰坦', '楚留香传奇']

  2、list.insert(索引号,”元素“) 表示在索引号的位置插入一个元素------------------插入

lst = ["西红柿首富","无双", "影", "超能泰坦"]
lst.insert(1, "建国大业") # 插入, 效率不高. 索引的变更
print(lst)#['西红柿首富', '建国大业', '无双', '影', '超能泰坦']

  3、list.extend("可迭代对象")  表示在在末尾一一添加可迭代对象的每一个元素------------------迭代添加

lst = ["西红柿首富","无双", "影", "超能泰坦"]
lst.extend("周杰伦")
print(lst) #['西红柿首富', '无双', '影', '超能泰坦', '周', '杰', '伦']
lst.extend(["倚天屠龙记", "乡村爱情"])
print(lst) #['西红柿首富', '无双', '影', '超能泰坦', '周', '杰', '伦', '倚天屠龙记', '乡村爱情']

二、列表的删除

  1、list.pop() 表示弹出一个元素,不添加索引,默认表示弹出最后一个,返回需要删除的元素

lst=[1,2,3,4,5]
lst.pop()#弹出最后一个元素
print(lst) #[1, 2, 3, 4]

  2、list.pop(索引号) 表示根据索引号弹出元素,返回需要删除的元素

lst=[1,2,3,4,5]
lst.pop(2) #弹出索引号为2的元素
print(lst) #[1, 2, 4, 5]

  3、list.remove("元素") 表示指定元素删除

lst=["张三丰","张翠山","张无忌","赵敏"]
lst.remove("赵敏")
print(lst) #['张三丰', '张翠山', '张无忌']

  4、del lst[索引]  按照索引删除元素

lst = ["杰森斯坦森", "勒布朗詹姆斯", "尼古拉斯凯奇", "郭达森"]
del lst[2] # 类似pop
print(lst) #['杰森斯坦森', '勒布朗詹姆斯', '郭达森']

     del lst[start:end ] 切片式删除

lst = ["杰森斯坦森", "勒布朗詹姆斯", "尼古拉斯凯奇", "郭达森"]
del lst[2:] # 批量删除 ['杰森斯坦森', '勒布朗詹姆斯']

     del lst[strat:end:step] 间隔切片删除

lst = ["杰森斯坦森", "勒布朗詹姆斯", "尼古拉斯凯奇", "郭达森"]
del lst[1:5:2] # 切片删除
print(lst) #['杰森斯坦森', '尼古拉斯凯奇']

  5、lst.clear() 表示清空列表

lst = ["杰森斯坦森", "勒布朗詹姆斯", "尼古拉斯凯奇", "郭达森"]
lst.clear() # 清空列表
print(lst) #[]

三、列表的修改

  list[索引]=new_value 表示修改制定索引位置的值

lst = ["太⽩", "太⿊", "五⾊", "银王", "⽇天"]
lst[1] = "太污" # 把1号元素修改成太污
print(lst)#['周杰伦', '周星星', '周星驰', '周润发']
lst[1:5:3] = ["麻花藤", "哇靠"] # 切⽚修改也OK. 如果步⻓不是1, 要注意. 元素的个数
print(lst) #['太⽩', '麻花藤', '五⾊', '银王', '哇靠'] lst[1]='麻花藤',lst[4]="哇靠"
lst[1:4] = ["李嘉诚个⻳⼉⼦"] # 如果切⽚没有步⻓或者步⻓是1. 则不⽤关⼼个数
print(lst)#['太⽩', '李嘉诚个⻳⼉⼦', '哇靠']

四、查询

  for el in list;

    print(el)

lst = ["胡辣汤", "猪脚饭", "吱吱冒油的猪蹄子", "猪头肉"]
for food in lst: # 列表可以使用for循环。 list是一个可迭代对象
print(food) #food表示列表中的每一项

五、列表的补充知识--排序

  1、list.sort( )  表示升序排序  

  2、lst.reverse( ) #列表反过来 

lst=[77,88,55,66,99,33,11,22,44]
lst.sort() #升序排序
print(lst) #[11, 22, 33, 44, 55, 66, 77, 88, 99]
lst.reverse() #反转
print(lst) #[99, 88, 77, 66, 55, 44, 33, 22, 11]

  2、list.sort(reverse=True) #倒序。从大到小

lst=[77,88,55,66,99,33,11,22,44]
lst.sort(reverse=True) #降序排序
print(lst) #[99, 88, 77, 66, 55, 44, 33, 22, 11]

六、列表的嵌套

  一层一层降维就可以找到需要的元素。

lst = [1, "太⽩", "wusir", ["⻢⻁疼", ["可⼝可乐"], "王剑林"]]
# 找到wusir
print(lst[2])
# 找到太⽩和wusir
print(lst[1:3])
# 找到太⽩的⽩字
print(lst[1][1])
# 将wusir拿到. 然后⾸字⺟⼤写. 再扔回去
s = lst[2]
s = s.capitalize()
lst[2] = s
print(lst)
# 简写
lst[2] = lst[2].capitalize()
print(lst)
# 把太⽩换成太⿊
lst[1] = lst[1].replace("⽩", "⿊")
print(lst)
# 把⻢⻁疼换成⻢化疼
lst[3][0] = lst[3][0].replace("⻁", "化")
print(lst[3][0])
lst[3][1].append("雪碧")
print(lst)

七、元祖

  1、元素索引和列表一样

tu = (1, "太⽩", "李⽩", "太⿊", "怎么⿊")print(tu[0])
print(tu[2])
print(tu[2:5]) # 切⽚之后还是元组

  2、可以遍历

tu = (1, "太⽩", "李⽩", "太⿊", "怎么⿊")
for el in tu:
print(el)

  注意:关于元组不可变的解说,元组不可变的意思是子元素不可变,而子元素内部的子元素是可以变的,这是取决于子元素是否可变。

七、range、join,split

  1、range可以帮我们获取到⼀组数据. 通过for循环能够获取到这些数据.

for num in range(10):
print(num)
for num in range(1, 10, 2):
print(num)
for num in range(10, 1, -2): # 反着来, 和切⽚⼀样
print(num)

  2、join  把列表拼接为字符串

li = ["李嘉诚", "麻花藤", "⻩海峰", "刘嘉玲"]
s = "_".join(li) #李嘉诚_麻花藤_⻩海峰_刘嘉玲
print(s)
li = "⻩花⼤闺⼥"
s = "_".join(li)
print(s)#⻩_花_⼤_闺_⼥

  3、split 把字符串切割返回字典

str="name:json:age:18"
lst=str.split(":")
print(lst)#['name', 'json', 'age', '18']

python list和tuple的更多相关文章

  1. Python之创建tuple和“可变”的tuple

    Python之创建tuple tuple是另一种有序的列表,中文翻译为" 元组 ".tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了. 同样是表示班里 ...

  2. Python中list,tuple,dict,set的区别和用法

    Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, tuple, dict, set.这里对他们进行一个简明的总结. List ...

  3. [转] Python list、tuple、dict区别

    from: http://www.cnblogs.com/Michael-Kong/archive/2012/07/11/2585840.html Dictionary 是 Python 的内置数据类 ...

  4. python基本数据类型——tuple

    一.元组的创建与转换: ages = (11, 22, 33, 44, 55) ages = tuple((11, 22, 33, 44, 55))ages = tuple([]) # 字符串.列表. ...

  5. Python list 和 tuple 使用小记

    list和tuple是Python内置的有序集合,一个可变,一个不可变.根据需要来选择使用它们. 1.内置数据类型,列表List >>> appleVersion = ['apple ...

  6. Python中list,tuple,dict,set的区别和用法(转)

    原文地址:http://www.cnblogs.com/soaringEveryday/p/5044007.html Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个 ...

  7. python 数据类型 之 tuple 元组

    python 3.6.5 元组的特性和定义 与列表类型 只不过 [  ] 改成了() 特性: 1.不可变(元组本身不可变,但是可以存可变类型的element){猜测因为可变element的地址不可变而 ...

  8. python list 和 tuple, dict 用于迭代代价

    #!/usr/bin/env python #-*- coding:utf-8 -*- import time start = time.time() for i in range(1000000): ...

  9. python 元组(tuple)

    面试python我想每个人都会被问一个问题,就是python中的list和tuple有什么区别? 一般情况下,我会回答,list元素可变,tuple元素不可变(书上或者其他的博客都是这么写的),一般情 ...

随机推荐

  1. 【转载】阿里云轻量应用型服务器和ECS服务器比较

    在采购阿里云服务器的时候,我们会发现阿里云服务器分好多种,如GPU服务器.ECS服务器.轻量应用型服务器等.ECS服务器和轻量应用型服务器很多人无法搞明白其中的差别,个人的观点是轻量应用型服务器适合入 ...

  2. 【转】JQuery上传插件Uploadify使用详解及错误处理

    转自:http://www.jb51.net/article/43498.htm 关于JQuery上传插件Uploadify使用详解网上一大把,基本上内容都一样.我根据网上的步骤配置完成后,会报一些错 ...

  3. C#、Python中分别是怎么实现通过字符串获取实体类的值以及给实体类赋值

    一.引入 最近遇到一个项目里面的功能,在给实体类赋值的时候,由于赋值字段是动态生成的,所以如果用常用的方法(直接实体类的名称.字段名=要赋的值),将会生成很多无用的代码,所以找到了一个通过反射的赋值与 ...

  4. Android Studio 日志工具

    在项目中提供5个方法打印日志 Log.v() 最常见的日志信息 Log.d() 调试信息 Log.i() 用于打印用户操作行为 Log.w()警告潜在风险 Log.e()报错信息 TAG 填入类名就好 ...

  5. LeNet训练MNIST

    jupyter notebook: https://github.com/Penn000/NN/blob/master/notebook/LeNet/LeNet.ipynb LeNet训练MNIST ...

  6. 通过css3实现的动画导航菜单代码

    用css3样式实现的滑动导航菜单,html代码如下 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" &quo ...

  7. C# % 和 /

    /相当于整数除法中的除号,%相当于余号5 除以 2 = 2 余 1,因此 5/2=2,5%2=1.

  8. zTree 节点文字过多处理方法

    zTree setting.view.addDiyDom 方法可以实现自定义控件,指定节点显示内容.因此需要自己实现addDiyDom方法. 如果树节点不显示checkbox ,处理方法为: func ...

  9. 腾讯的产品思维 VS 阿里的终局思维

    从成立到借壳上市,有赞用了5年多时间.这期间,它有好几次机会死掉,有很多的理由活不到今天,白鸦曾经说,每一次度过难关最关键都是靠团队的力量.谢天谢地,它活了下来. 那么,这个在To B领域敢打敢拼的团 ...

  10. Vue之axios请求数据

    引入文件 <script src="https://cdn.staticfile.org/vue-resource/1.5.1/vue-resource.min.js"> ...