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. python各种转义字符

  2. 取代iframe,实现页面中引入别的页面

    <li> <a href="#addChannel">添加通道</a> </li> window.onload = rightCha ...

  3. linux windows 格式化一块大于2 TiB硬盘

    转自:https://help.aliyun.com/document_detail/34377.html?spm=a2c4g.11186623.2.10.17447386JrLBNR#concept ...

  4. golang获取u盘序列号(通过读取注册表实现)

    仅供参考 package main import ( "fmt" "log" "os" "strconv" " ...

  5. VMware install MikroTik RouterOS

    1 download the vmdk from Mikro Tik official website 2 create a new vmware host with use an exited vm ...

  6. log4j日志实现重复警告slf4j-jdk14和log4j-over-slf4j

    因为各种三方库依赖的log4j实现不同,所以可能会出现找到多个log4j实现的警告,但是不影响程序(logback是会影响的),如下: SLF4J: Class path contains multi ...

  7. pandas替换一列中的汉字为数字

    表格的一列“总金额”应该全部为数字,但其中少数项出现汉字,应该将汉字替换为数字,才能进行后面的计算. 先定义一个函数: def is_number(s): try: float(s) return T ...

  8. Oracle中的位图索引和函数索引

    位图索引 同样的,先说是什么,再说为什么. 上篇我们说过BTREE索引是将数据表的索引列和行号排序后以树状形式存在磁盘中.那位图索引是什么样的呢? 现有如下日志表,有操作类型字段op_type,该字段 ...

  9. hdfs性能调优(cloudera)

    参照官方文档:http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/cdh_ig_yarn_tuni ...

  10. Bigger-Mai 养成计划,Docker之安装,部署

    CentOS Docker 安装 Docker支持以下的CentOS版本: CentOS 7 (64-bit) CentOS 6.5 (64-bit) 或更高的版本 前提条件 目前,CentOS 仅发 ...