1、列表
 
    定义:能装对象的对象
    在python中使用[] 来描述列表,内部元素用逗号隔开,对数据类型没有要求。
    列表存在索引和切片,和字符串的操作是一样的
 
2、列表相关的增删改查操作
    
      添加:
               1、append()  追加,在后面添加
                2、insert(位置,元素),效率相对较低 
                3、extend( )    迭代添加,把传递进去的参数进行迭代,把每一项添加到表的末尾(如果参数是字符串,将会把每个字符当成一个元素迭代添加到列表中)

lst = ['qian','钱','money','doll']
lst.extend('冷暖自知')
lst.extend(['力量','盟友'])
print(lst)
# ['qian', '钱', 'money', 'doll', '冷', '暖', '自', '知', '力量', '盟友']

  

  删除:
             1、pop() 默认从后往前删除   pop(索引) 根据索引删除
             2、remove(元素)  根据元素删除 ,当元素不存在时,会报错
             3、del  lst[start:end:step]   根据索引或者切片删除
             4、clear()   清空
  
   修改:
             1、索引修改
              2、ls[索引] =  元素
 
           注:报错:IndexError: list assignment index out of range   索引下标越界
 
   迭代更新
lst = ['大树','白云','小鸟','蝴蝶','蜜蜂']
lst[3:] = '小动物'
print(lst)
# ['大树', '白云', '小鸟', '小', '动', '物']

  切片更新

lst = ['大叔','白云','小鸟','蝴蝶','蜜蜂','苍鹰']
lst[3:5] = ['星星']
print(lst)
# ['大叔', '白云', '小鸟', '星星', '苍鹰']

  

 如果步长不为1,元素的个数必须要和切片的个数一致不然会报错
ValueError: attempt to assign sequence of size 1 to extended slice of size 2
lst = ['大叔','白云','小鸟','蝴蝶','蜜蜂','苍鹰']
lst[1:4:2] = ['宇宙','黑洞']
print(lst)
# ['大叔', '宇宙', '小鸟', '黑洞', '蜜蜂', '苍鹰']

  

  查询:(列表是一个可迭代对象)
 
     for 循环

lst = ['大叔','白云','小鸟','蝴蝶','蜜蜂','苍鹰']

for item in lst:      # lst  是   item  中的每一项

  print(item)

  

for i in 123:
  print(i)

  报错:TypeError: 'int' object is not iterable

3、列表的嵌套
 
     多个列表互相嵌套(降维操作)
 
4、列表的其他操作
 
     1、count(xxx)   计数   查看xxx 元素出现的次数
     2、 sort()  排序(升序)   sort(reserve  =  True)  倒序
     3、reverse()  将列表元素翻转过来

li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
li.reverse()
print(li)
# ['wenzhou', 'barry', 'ritian', 'WuSir', 'alex']

  

   4、len() 列表长度  查看列表中元素的个数
 
     查看list 的其他操作    list  按住ctrl +鼠标左键
 
5、元组
 
     能装对象的对象,不可变,一旦确认好,不可更改。  用()表示,只读列表
     注:
    tu = tuple()   #空元组  固定写法
    tu  = (1) 不是元组  print(type(tu))   # <class 'int'>
    tu  =  (1,)   元组中只有一个元素      #< class 'tuple'>
 
   好习惯:写元组的时候末尾加个逗号
   元组也是可迭代的 ,可以使用for循环
  
tu = ('规格','面积','大小',['正方形','圆形'])
tu[3].append('长方形')
print(tu)
# ('规格', '面积', '大小', ['正方形', '圆形', '长方形'])
# 元组没改,改的是元素内部,没有改变元组的指向,所以不报错

  

6、range  数数
    
     range(n)    [0,n)
     range(m,n)   [m,n)
     range(m,n,p)  [m,n)   每隔p取一个

lst = ['你是水','我是冰']
for i in range(len(lst)):
  print(i , lst[i])
# 0 你是水
# 1 我是冰

  

python - 列表,元组的更多相关文章

  1. python列表元组

    python列表元组 索引 切片 追加 删除 长度 循环 包含   定义一个列表 my_list = []     my_list = list()   my_list = ['Michael', ' ...

  2. Python—列表元组和字典

    Python-列表元组和字典 列表 元组 字典 列表: 列表是Python中的一种数据结构,他可以存储不同类型的数据.尽量存储同一种类型 列表索引是从0开始的,我们可以通过索引来访问列表的值. 列表的 ...

  3. 【277】◀▶ Python 列表/元组/字典说明

    目录: 前言 一.访问列表中的值 二.更新列表 三.删除列表元素 四.Python 列表脚本操作符 五.Python 列表函数 & 方法 参考:Python 列表(List)使用说明 列表截取 ...

  4. Python 列表/元组/字典总结

    序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的是列表和元组. 序列 ...

  5. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  6. Python成长笔记 - 基础篇 (三)python列表元组、字典、集合

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码   一.列表和元组的操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义 ...

  7. Python列表,元组,字典,序列,引用

    1.列表 # Filename: using_list.py # This is my shopping list shoplist=["apple", "mango&q ...

  8. python 列表 元组 字典 集合

    列表 lst = [i for i in range(10)] 切片 # 把下标小于2的显示出来 print(lst[:2]) # 把10个数有大到小输出 print(lst[::-1]) # 把下标 ...

  9. Python 列表&元组&字典&集合

    列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片.合并.删除等操作 可通过索引来向指定位置插入元素 可通过po ...

  10. Python列表,元组,字典,集合详细操作

    菜鸟学Python第五天 数据类型常用操作及内置方法 列表(list) ======================================基本使用====================== ...

随机推荐

  1. 前端使用node.js的http-server开启一个本地服务器

    前端使用node.js的http-server开启一个本地服务器 在写前端页面中,经常会在浏览器运行HTML页面,从本地文件夹中直接打开的一般都是file协议,当代码中存在http或https的链接时 ...

  2. CCF CSP 201503-1 图像旋转 (降维)

    题目链接:http://118.190.20.162/view.page?gpid=T27 问题描述 试题编号: 201503-1 试题名称: 图像旋转 时间限制: 5.0s 内存限制: 256.0M ...

  3. 最短路径 SPFA P3371 【模板】单源最短路径(弱化版)

    P3371 [模板]单源最短路径(弱化版) SPFA算法: SPFA 算法是 Bellman-Ford算法 的队列优化算法的别称,通常用于求含负权边的单源最短路径,以及判负权环.SPFA 最坏情况下复 ...

  4. 5.1JAVA基础复习——JAVA中的静态代码块、构造代码块、构造函数、局部代码块区别

    构造代码块: 在类中定义可以给所有对象进行初始化.局部代码块: 在方法中定义属性的生命周期.静态代码块: 在类中定义用于给类调用时属性的初始化 构造函数与构造代码块的区别: 构造函数是给对应的对象进行 ...

  5. node离线版安装

    1.下载 下载地址:https://nodejs.org/zh-cn/download/ 选择相应的版本下载 2.解压缩 将文件解压到要安装的位置,并新建两个目录 node-global :npm全局 ...

  6. 火狐开发----从头用到尾的cfx

    此教程阐述了如何使用 SDK 开发一个简单的扩展. 准备 要想使用 SDK 开发 Firefox 的扩展,您首先需要 安装并激活 SDK.一旦您完成了以上步骤,您将会看到一个命令行窗口. 初始化一个空 ...

  7. 【annotation】非人类物种基因组注释(MSU为例)

    基因组注释工具ANNOVAR是一款非常好用的注释软件,功能强大,输出数据简单美中不足就是对于非人类物种来说UI不够完善,因此总结一下整个注释的过程,帮助别人快乐自己. 首先我们需要明确我们需要的数据和 ...

  8. Http协议&Servlet

    http协议 针对网络上的客户端 与 服务器端在执行http请求的时候,遵守的一种规范. 其实就是规定了客户端在访问服务器端的时候,要带上哪些东西, 服务器端返回数据的时候,也要带上什么东西. 版本 ...

  9. 网站搭建 (第06天) Ckeditor编辑器

    一.前言 富文本编辑器,Rich Text Editor, 简称 RTE, 是一种可内嵌于浏览器,所见即所得的文本编辑器,这是百度百科的对富文本编辑器的解释.我们可以借助富文本编辑器,编辑出来一个包含 ...

  10. SKCTF Writeup

    签到题 请打开微信关注,发送give me flag,即可获得. Encode 1.ACSCLL 首先看到这类题,我们肯定是要使用ASCLL的(这么明显的提示大家肯定一眼就能看出来),我们可以对照As ...