list的基本功能

  • 结果类型  中括号括起来
  • 逗号(,)分割每一个元素
  • 列表中的元素可以是数字,字符串,列表,布尔值所有的都能放
  • 索引,切片
1
2
3
li = [1, 3, 5, "jianer", ["病毒尖儿",18],"cat"]
print(li[1])              # 索引取值
print(li[2:4])            # 切片取值(切片的结果也是列表)
  • 支持for循环
1
li = [1, 3, 5, "jianer", ["病毒尖儿",18],"cat"]<br>for item in li:           # for循环列表<br>  print(item)
  • 支持while循环
  • 索引删除,切片删除
1
2
3
4
5
li = [1, 3, 5, "jianer", ["病毒尖儿",18],"cat"]
del li[0]                 # 索引删除
print(li)
del li[0:3]               # 切片删除
print(li)
  • 索引修改,切片修改
1
2
3
4
5
li = [1, 3, 5, "jianer", ["病毒尖儿",18],"cat"]
li[0] = 88                # 索引修改
print(li)
li[0:3] = 7,8,9           # 切片修改
print(li)
  • in操作
1
2
3
li = [1, 3, 5, "jianer", ["病毒尖儿",18],"cat"]
v = 3 in(li)              # in操作
print(v)
  • 索引找值
1
2
3
li = [1, 3, 5, "jianer", ["病毒尖儿",18],"cat"]
v = li[4][0][2]          # 索引找并打印 
print(v)

转换

  • 列表转换成字符串
  • 需要自己写for循环一个一个处理:既有数字又有字符串
  • 直接使用字符串join方法:只有字符串

list的方法(魔法)

  • 需要记忆的魔法有:append(追加),extend(扩展),insert(插入)

  append  原来值最后追加,数字,字符,列表都可以进行追加

1
2
3
li = [6,8,7,5,8]
li.append(2)                # 追加再最后 原来值再后面追加,因此不用赋予新的值
print(li)

    clear     清空列表

1
2
3
li = [6,8,7,5,8]
li.clear()                  # 清空列表
print(li)

    copy   拷贝(浅拷贝)

1
2
3
li = [6,8,7,5,8]
v = li.copy()               # 拷贝,浅拷贝
print(li)

  count    计数(计算元素出现的次数)

1
2
3
li = [6,8,7,5,8]
v = li.count(8)             # 计算元素出现的次数
print(v)

  extend  扩展原列表,参数可迭代对象(数字不能扩展,数字不可迭代)

1
2
3
li = [6,8,7,5,8]
li.extend("b")              # 扩展追加。
print(li)

  index   根据值获取值的指引位置

1
2
3
li = [6,8,7,5,8]
v = li.index(8)             # 根据值获取值的索引位置
print(v)<br><br>1                 重复字符,获取最左边位置,便不再寻找

  insert   插入,也可以根据指引位置插入元素

1
2
3
li = [6,8,7,5,8]
li.insert(2,"b")       # 前面参数指定索引,逗号分隔,加要插入的元素
print(li)

  pop    可索引删除某个值,无索引则默认删除最后一个值,赋予一个值也可以获得被删除的值

1
2
3
4
li = [6,8,7,5,8]
v = li.pop(2)               # 指定索引删除,无索引则默认删除最后一个值,也可以获取删除的值
print(li)
print(v)

  remove  删除列表指定值,左边优先

1
2
3
li = [6,8,7,5,8]
li.remove(8)                # 删除列表指定值,从左优先
print(li)

  reverse  将当前列表进行反转

1
2
3
li = [6,8,7,5,8]
li.reverse()                # 将当前列表进行反转
print(li)

  sort    排序,有秩序的排序。

1
2
3
li = [6,8,7,5,8]
li.sort(reverse=True)      # 当反转正确,则从大到小排序
print(li)

列表推导式

  列表推导式提供了从序列创建列表的简单途径。通常应用程序将一些操作应用于某个序列的每个元素,用其获得的结果作为生成新列表的元素,或者根据确定的判定条件创建子序列。

  每个列表推导式都在 for 之后跟一个表达式,然后有零到多个 for 或 if 子句。返回结果是一个根据表达从其后的 for 和 if 上下文环境中生成出来的列表。如果希望表达式推导出一个元组,就必须使用括号。

 vec = [2,4,6]
go = [3*x for x in vec]
print(go) [6, 12, 18] # 这里我们将每个数据乘以三,获取一个新列表
 freshfruit = ['  banana', '  loganberry ', 'passion fruit  ']
go = [weapon.strip() for weapon in freshfruit]
print(go) ['banana', 'loganberry', 'passion fruit'] #对序列每个元素逐个调用方法

  也可以用if子句作过滤

 vec = [2,4,6]
go = [x for x in vec if x >3]
print(go) [4, 6]

  其它一些示例

 >>> vec1 = [2, 4, 6]
>>> vec2 = [4, 3, -9]
>>> [x*y for x in vec1 for y in vec2]
[8, 6, -18, 16, 12, -36, 24, 18, -54]
>>> [x+y for x in vec1 for y in vec2]
[6, 5, -7, 8, 7, -5, 10, 9, -3]
>>> [vec1[i]*vec2[i] for i in range(len(vec1))]
[8, 12, -54]

其它示例

python基本数据类型之列表list的更多相关文章

  1. Python特色数据类型(列表)(上)

    Python从零开始系列连载(9)——Python特色数据类型(列表)(上) 原创 2017-10-07 王大伟 Python爱好者社区 列表 列表,可以是这样的: 分享了一波我的网易云音乐列表 今天 ...

  2. python基本数据类型之列表和元组

    python基本数据类型之列表与元组 python中list与tuple都是可以遍历类型.不同的是,list是可以修改的,而元组属于不可变类型,不能修改. 列表和元组中的元素可以是任意类型,并且同一个 ...

  3. Python的数据类型2列表

    Python的数值类型List,也就是列表 Python的列表比较类似与其他语言的数组概念,但他又与其他语言数组的概念有很大的不同 C语言.Java的数组定义是这样的,存储多个同类型的数值的集合就叫数 ...

  4. Python - 基础数据类型 list 列表

    什么是列表 列表是一个有序的序列 列表中所有的元素放在 [ ] 中间,并用逗号分开 一个 列表 可以包含不同类型的元素,但通常使用时各个元素类型相同 特征 占用空间小,浪费内存空间少 声明列表变量 列 ...

  5. Python基础数据类型之列表和元组

    一.列表   list 列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如: li ...

  6. python基础数据类型--list列表

    列表: 列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如: li = [‘alex ...

  7. python 基础数据类型 之 列表

    列表:定义 和特性 列表定义和创建: 定义:[,]内以逗号分隔,按照索引,存放各种数据类型,一般没有限制,每个位置代表一个元素 range_create = list(range(0, 10))pri ...

  8. Python基本数据类型之列表

    学习Python的列表类型需要了解和掌握什么是列表.列表的可变性.列表的访问.列表的增删改查等操作~ 1.了解列表 list1 = ['abc', 123, {1, 2, 3},[2,3]] Pyth ...

  9. python基础数据类型之列表,元组操作

    一.列表的索引和切片1.列表的索引列表和字符串一样样拥有索引 lst = ["a","b","c"] print(lst[0]) # 获取第 ...

  10. python的数据类型之列表list

    列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现.例如: stus = ["zhangsan","lisi","wangwu ...

随机推荐

  1. (转) OpenLayers3基础教程——加载资源

    概述: 本节讲述如何在Ol3中加载wms图层并显示到地图中. Ol3下载: 你可以在OL官网去下载,下载地址为http://openlayers.org/download/,也可以去我的百度云盘下载, ...

  2. ESP32 开发笔记(十二)LittlevGL 添加自定义字体和物理按键

    LittlevGL 添加自定义字体获取字库 ttf 文件可以从一些网站上获取字库文件,比如请注意字体许可证 生成源文件使用 LittlevGL 提供的字库文件转换工具,将 ttf 字库文件转换为源文件 ...

  3. Uoj #274. 【清华集训2016】温暖会指引我们前行 LCT维护边权_动态最小生成树

    Code: 行#include<bits/stdc++.h> #define ll long long #define maxn 1000000 #define inf 100000000 ...

  4. 【转载】JSTL和EL的使用

    使用JSTL前的准备 想要使用JSTL,首先需要给工程导入JSTL的包(JSTL.jar和standard.jar). JSTL标签库 在JSTL中分为以下五个标签 核心标签 格式化标签 SQL标签 ...

  5. 国密SSL证书申请免费试用

    沃通提供国密SSL证书免费申请试用服务,一次申请可同时签发SM2/RSA双算法证书,试用周期1个月,用于测试国密SM2 SSL证书的运行效果和SM2/RSA双证书部署效果. 试用产品:SM2/RSA双 ...

  6. 【剑指Offer】8、跳台阶

      题目描述:   一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果).   解题思路:   首先考虑最简单的情况,如果只有1级台阶, ...

  7. [转载]Linux内存高,触发oom-killer问题解决

    最近遇到两起Linux的内存问题,其一是触发了oom-killer导致系统挂 首先确认该系统的版本是32位 #uname -a Linux alarm 2.6.9-67.ELsmp #1 SMP We ...

  8. C#第十二节课

    数组 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Th ...

  9. vue: This relative module was not found

    这是今天运行vue项目报的一个错误,特地在此记录一下. 错误信息如下: ERROR Failed to compile with 1 errors This relative module was n ...

  10. C++ 类型转化(运算符重载函数)和基本运算符重载(自增自减)

    类型转化(运算符重载函数) 用转换构造函数可以将一个指定类型的数据转换为类的对象.但是不能反过来将一个类的对象转换为一个其他类型的数据(例如将一个Complex类对象转换成double类型数据).在C ...