一、列表的创建

list((3, 5, 7, 9, 11))

list(range(1, 10, 2))

""" 字符串、集合、字典的键、字典的键:值对转列表 """

list('hello, world')

list({3, 7, 8})

list({'a':3, 'b':9, 'c':78})

list({'a':3, 'b':9, 'c':78}.items())

""" 空列表 """

x = list()

x = []

二、列表的删除

del x

三、 列表元素访问及修改

x = list('python')

print(x)

""" 正数顺序访问,负数倒序访问 """

print(x[1])

print(x[-1])

""" 用下标进行修改 """

x[2] = 'a'

print(x)

四、 [增]操作:append()、insert()、extend()

x = [1, 2, 3]

""" append()尾部追加单个元素 """

x.append(4)

print(x)

""" insert()指定插入单个元素 """

x.insert(0, 0)

print(x)

""" extend()尾部追加列表 """

x.extend([5, 6, 7])

print(x)

五、[删]操作:pop()、remove()、clear()、del

x = [1, 2, 3, 4, 5, 6, 7]

""" pop()删除并返回指定位置元素(默认结尾处)(也可用负数来逆序弹出) """

print(x.pop())

print(x.pop(-2))

""" remove()删除首个指定的值,没有则抛出异常 """

x.remove(4)

print(x)

""" del 删除指定位置元素,后续元素会自动收缩 """

del x[2]

print(x)

""" clear()删除所有元素 """

x.clear()

print(x)

六、 [查]操作:下标、count()、index()

x = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]

""" 下标查指定位置元素 """

print(x[4])

""" count()查指定元素出现次数 """

print(x.count(4))

""" index()查指定元素首次出现索引 """

print(x.index(3))

七、 排序操作:sort()、reverse()

x = list(range(11))

import random

""" 洗牌操作(打乱顺序) """

random.shuffle(x)

print(x)

""" sort()排序 """

""" 按字符串长度降序排序 """

x.sort(key=lambda item:len(str(item)), reverse=True)

print(x)

""" 按字符串大小升序排序:从左边开始第一个字符依次比较 """

x.sort(key=str)

print(x)

""" 默认排序(升序) """

x.sort()

print(x)

""" reverse()翻转 """

x.reverse()

print(x)

八、 复制:copy()浅复制、deepcopy()深复制

x = [1, 2, [3, 4]]

y = x.copy()

import copy

z = copy.deepcopy(x)

九、常见内置函数:max()、min()、sum()、len()、all()、any()、zip()、enumerate()

x = list(range(11))

""" all()检测是否所有元素等价于True """

print(all(x))

""" any()检测是否存在元素等价于True """

print(any(x))

""" 最大的数 """

print(max(x))

""" 最小的数 """

print(min(x))

""" 列表求和 """

print(sum(x))

""" 列表长度 """

print(len(x))

""" 多列表重组成元组 """

print(list(zip(x, [2]*11)))

""" 枚举列表元素 """

print(list(enumerate(x)))

十、对列表的+ 和 * 操作

""" + 操作(非原地操作-->返回新列表) """

x = [1, 2, 3]

print(id(x))

x = x + [4]

print(x)

print(id(x))

""" += 操作类似于append()原地操作 """

x += [5]

print(x)

print(id(x))

""" * 操作(非原地操作-->返回新列表) """

x = [1, 2, 3, 4]

print(id(x))

x = x * 2

print(x)

print(id(x))

x *= 2

print(x)

print(id(x))

""" 重复0次清空 """

x *= 0

print(x)

十一、列表推导式(列表解析式)

alist = [x * x for x in range(10)]

print(alist)

freshfruit = ['banana', ' loganberry', 'passion fruit']

alist = [w.strip() for w in freshfruit]

print(alist)

alist = list(map(lambda x : x.strip(), freshfruit))

print(alist)

alist = list(map(str.strip, freshfruit))

print(alist)

""" ①实现嵌套列表的平铺 """

vec = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

""" 第一个循环为外循环,第二个循环为内循环 """

print([num for elem in vec for num in elem])

print(list(chain(*vec)))

""" 过滤不符合条件的元素 """

alist = [-1, -4, 6, 7.5, -2.3, 9, -11]

print([i for i in alist if i > 0])

scores={"Zhang San":45, "Li Si":78, "Wang Wu":40, "Zhou Liu":96,

"Zhao Qi":65, "Sun Ba":90, "Zheng Jiu":78, "Wu Shi":99,

"Dong Shiyi":60}

highest = max(scores.values())

lowest = min(scores.values())

average = sum(scores.values())/len(scores)

print((highest, lowest, average))

highestPerson = [name for name, score in scores.items() if score == highest]

print(highestPerson)

from random import randint

x = [randint(1, 10) for i in range(20)]

print(x)

m = max(x)

print([index for index, value in enumerate(x) if value == m])

""" 同时遍历多个列表或可迭代对象 """

print([(x, y) for x in [1, 2, 3] for y in [3, 1, 4] if x != y])

print([(x, y) for x in [1, 2, 3] if x == 1 for y in [3, 1, 4] if y != x])

""" 使用列表解析式实现矩阵转置 """

matrix = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]

print([[row[i] for row in matrix] for i in range(4)])

print(list(map(list, zip(*matrix))))

""" 列表推导式中使用函数或复杂表达式 """

def f(v):

if v % 2 == 0:

v = v ** 2

else:

v = v + 1

return v

print([f(v) for v in [2, 3, 4, -1] if v > 0])

print([v ** 2 if v % 2 == 0 else v + 1 for v in [2, 3, 4, -1] if v > 0])

""" 列表推导式生成100以内所有素数 """

print([p for p in range(2, 100) if 0 not in [p % d for d in range(2, int(sqrt(p)) + 1)]])

python list常用方法_Python中列表(List)的基本用法相关推荐

  1. python的含义和用法_python中列表的含义及用法

    示例 列表是元素的集合,存储在一个变量中.列表中存储的元素类型没有限制,下面是列表的一个简单例子. students = ['bernice', 'arron', 'cody'] for studen ...

  2. python乘法函数_Python中列表与元组的乘法操作示例

    本文实例讲述了Python中列表与元组的乘法操作.分享给大家供大家参考,具体如下: 直接上code吧,还可以这么玩儿 列表乘法: li=[1,] li=li*3 print(li) out: [1, ...

  3. python defaultdict函数_Python中defaultdict与lambda表达式用法

    这篇文章主要介绍了Python中defaultdict与lambda表达式用法,在这里分享给大家,需要的朋友可以参考下 本文实例讲述了Python中defaultdict与lambda表达式用法.分享 ...

  4. python中列表常用方法_Python中列表的常用方法

    给列表添加元素 append方法 在列表最后追加元素 l1 = ['a', 'b', 'c', 'd', ] l1.append('e')print(l1)print(l1.append('e'))# ...

  5. python os 常用方法_python中os常用方法详解

    os的官方解释 os os: This module provides a portable way of using operating system dependent functionality ...

  6. python集合常用方法_Python中集合类型(set)学习小结

    set 是一个无序的元素集合,支持并.交.差及对称差等数学运算, 但由于 set 不记录元素位置,因此不支持索引.分片等类序列的操作. 初始化 复制代码 代码如下: s0 = set() d0 = { ...

  7. Python 3.7.1 中 namedtuple 具名元组基本用法详解

    Python 3.7.1 中 namedtuple 具名元组基本用法详解 转载请注明出处:https://blog.csdn.net/jpch89/article/details/84645251 文 ...

  8. python列表方法语句_Python中列表和元组的相关语句和方法讲解

    列表(list): 首先,列表属于序列,那么序列类型可用如下内建函数-- list(iter):把可迭代对象转换为列表. str(obj):把obj对象转换为字符串,即用字符串来表示这个对象. tup ...

  9. python列表切片得到的是列表还是字符串_python中列表的切片问题 python arry怎么取列切片...

    python 列表切片赋值 对列表切片进行赋值,解释器处理时是直接将序列中的内容赋值过去的 ,还切片赋值,得到的与原变量无关,是两个不同的对象:直接赋值,引用的是同一个对象. 请看下例 切片赋值. a ...

最新文章

  1. 数据增删改查之三层架构(理解三层续)
  2. 关于MySQL AUTO_INCREMENT的小情况
  3. 求职中最吃香的编程语言:JavaScript、Java 和 Python
  4. JavaScript-严格检查模式
  5. 哪个类型的B端产品经理有前景?
  6. 考研初试将近,收好这份准备清单,祝你一战成硕
  7. 服务器之IP地址与域名之间的绑定
  8. Python文件的操作
  9. VMware 安装WIN10 WIN7
  10. 软件测试——基础理论知识你都不一定看得懂
  11. 查询MYSQL数据库中所有的表
  12. gbase的安装及使用
  13. [DOS教程----读书笔记]命令全集
  14. # 这是一级标题 ## 这是二级标题
  15. 一区希尔盖服务器找不到,怀旧服克罗米服务器关闭转入 龙牙即将满载
  16. DGIOT平台实时展示OPC上报数据全流程代码剖析
  17. 图割论文阅读笔记:“GrabCut” — Interactive Foreground Extraction using Iterated Graph Cuts
  18. 浅析微信支付:开通社交立减金活动、创建立减金及领取使用的相关文档和源码
  19. 接私活赚到W了!!!!
  20. 如何让macOS的「终端」走代理

热门文章

  1. Service Mesh新成员:Consul 1.2
  2. qMISPlat入门级使用问题解答一
  3. ABPZero系列教程之拼多多卖家工具
  4. asp.net core 认证及简单集群
  5. JetBrains 加入 .NET 基金会
  6. django12:form 组件/渲染标签/数据校验/钩子函数/
  7. Js 枚举定义Layer Icon
  8. [转]大数据环境搭建步骤详解(Hadoop,Hive,Zookeeper,Kafka,Flume,Hbase,Spark等安装与配置)
  9. 【ArcGIS风暴】ArcGIS求一个矢量图层中多个图斑的“四至点”坐标案例教程
  10. 【地理信息系统GIS】教案(七章全)第一章:地理信息系统概述