列表

列表

可以存放不同类型的数据

列表相关操作

添加

append
list1 = []
for i in range(10):
    list1.append(i)
print(list1)

效果如下


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

insert

在指定位置index前插入元素object

a.insert(1,10)
print(a)

效果如下


[0, 10, 1, 2]

extend 可以将另外一个集合逐一添加到列表中
a = [1,2]
b = [3,4]
a.append(b)
print(a)
a.extend(b)
print(a)

效果如下


[1, 2, [3, 4]]
[1, 2, [3, 4], 3, 4]

修改

name_list = ['里布','xiaoming',1024]
name_list[1] = '小明'
print(name_list)

查找 in not in

name_list = ['里布','小明',1024]
name_list[1] = '小明'
Find_name = '小明'
if Find_name in name_list:
    print('小明在列表中')

效果如下


小明在列表中

index
a = ['a', 'b', 'c', 'd', 'a', 'b']
index1 = a.index('a', 0,3)
print(index1)

0

count
a = ['a', 'b', 'c', 'd', 'a', 'b']
num = a.count('b')
print(num)

2

删除

del

根据下标进行删除

name_list = ['鲁班','小明',1024]
del name_list[0]
print(name_list)

['小明', 1024]

pop

删除最后一个元素

remove

根据值删除

name_list = ['鲁班','小明',1024]
name_list.remove('小明')
print(name_list)

['鲁班', 1024]

sort与sorted
  1. sort对原来的列表进行改变,sorted返回新列表,原来的列表没有改变
  2. sort属于列表成员方法,sorted属于内置函数,可以对可迭代的对象进行排序

列表的嵌套

矩阵一般不使用矩阵的嵌套

列表推导式

轻量级循环创建列表

list2 = [i for i in range(10)]
print(list2)

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

list3 = ['ololololol' for _ in range(5)]
print(list3)

['ololololol', 'ololololol', 'ololololol', 'ololololol', 'ololololol']

L = [randint(-10, 10) for _ in range(10)]
print(L)

[2, 2, 4, -4, 5, 9, -1, 6, -3, 2]
筛选元素

from random import randint
L = [randint(-10, 10) for _ in range(10)]
res = [x for x in L if x >= 0]
print(res)

[10, 4, 10, 2]

列表转化成字符串

my_list = ['Welcome', 'to', 'ML', 'World']
print(' '.join(my_list))

Welcome to ML World

字符串和列表的乘法运算

列表

复制原列表,返回新列表

List = ['6', 9, 10, 0, 3] * 5
print(List)

['6', 9, 10, 0, 3, '6', 9, 10, 0, 3, '6', 9, 10, 0, 3, '6', 9, 10, 0, 3, '6', 9, 10, 0, 3]

字符串

复制原字符串,返回新字符串

例题

import string
from random import randint
offices = [[], [], []]
names = list(string.ascii_uppercase[:8])
for name in names:
    offices[randint(0,2)].append(name)

print(offices)
i = 1
for tempName in offices:
    print('办公室{}的人数为{}'.format(i, len(tempName)))
    i += 1
    print('成员为:',end=' ')
    for name in tempName:
        print('{}'.format(name),end=' ')
    print('\n'+'-' * 30)

同时遍历两个列表

zip

用于将可迭代对象作为参数,将对象中的对应的元素打包成元组,然后返回这些元组对象 节约内存

a = [1, 2, 3]
b = [4, 5, 6]
c = [4, 5, 6, 7, 8]
zipped = zip(a, b)
print(list(zipped))

[(1, 4), (2, 5), (3, 6)]
长度不一致,返回的对象与最短对象相同

打乱列表顺序

import random
a = [1, 2, 3, 4, 5, 6]
random.shuffle(a)
print(a)

效果如下

[4, 2, 3, 5, 1, 6]
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本节要介绍的是Python里面常用的几种数据结构。通常情况下,声明一个变量只保存一个值是远远不够的,我们需要将一组...
    小黑y99阅读 65,330评论 0 9
  • 数据结构,是指通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合,这些数据元素可以是数字或者字符,甚至可...
    千释炎阅读 4,282评论 0 0
  • 列表 list 列表是由一系列特定元素组成的,元素和元系之间没有任何关联关系,但他们之间有先后顺序关系 列表是一种...
    遇明不散阅读 2,224评论 0 0
  • 列表: 有序的可变的元素集合 定义: 方式1[元素1, 元素2, 元素3...]例如: [1, 2, 3, 4, ...
    伯wen阅读 2,732评论 0 0
  • 列表属于容器存储、可变、顺序访问的数据类型。列表可以包含任何种类的对象或者嵌套,借助列表可以构造许多复杂的数据结构...
    梦回吹角连营阅读 4,119评论 0 4