List 列表基础用法

List 列表基础用法

列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

列表的语法格式:

:::info

变量[头下标:尾下标]

:::

索引值以 0 为开始值,-1 为从末尾的开始位置

python 复制代码
list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
tinylist = [123, 'runoob']

print (list)            # 输出完整列表
print (list[0])         # 输出列表第一个元素
print (list[1:3])       # 从第二个开始输出到第三个元素
print (list[2:])        # 输出从第三个元素开始的所有元素
print (tinylist * 2)    # 输出两次列表
print (list + tinylist) # 连接列表

# python 字符串列表中的元素是可以改变的
a = [1,2,3,4,5,6]
a[0] = 9
a[2:5]=[13,14,15]
print(a)
# [9, 2, 13, 14, 15, 6]
a[2:5] = []  # 将对应的元素值设置为 []
print(a)
# [9, 2, 6]

"""
1、List写在方括号之间,元素用逗号隔开
2、和字符串一样,List可以被索引和切片
3、List可以使用+操作符进行拼接
4、List的元素可以改变
5、Python 列表截取可以接收第三个参数,参数作用是截取的步长,以下实例在索引 1 到索引 4 的位置并设置为步长为 2(间隔一个位置)来截取字符串:
"""
a = [9, 2, 13, 14, 15, 6]
print(a[1:5:2])  # [2, 14]

"""
6、如果第三个参数为负数表示逆向读取,以下实例用于翻转字符串:
"""

def reverseWords(input):
    # 通过空格将字符串分隔符,把各个单词分隔为列表
    inputWords = input.split(" ")
    # 翻转字符串
    # 假设列表 list = [1,2,3,4],
    # list[0]=1, list[1]=2 ,而 -1 表示最后一个元素 list[-1]=4 ( 与 list[3]=4 一样)
    # inputWords[-1::-1] 有三个参数
    # 第一个参数 -1 表示最后一个元素
    # 第二个参数为空,表示移动到列表末尾
    # 第三个参数为步长,-1 表示逆向
    inputWords = inputWords[-1::-1]
    # 重新组合字符串
    output = " ".join(inputWords)
    return  output

if __name__ == "__main__":
    input = "do you love me @ nana"
    rw = reverseWords(input)
    print(rw)

list1 = ['Google', 'Runoob', 'Taobao']
list1.append('Baidu')
print ("更新后的列表 : ", list1)

list = ['Google', 'Runoob', 1997, 2000]

print("原始列表 : ", list)
del list[2]
print("删除第三个元素 : ", list)

列表基本操作

python 表达式 结果 描述
len([1, 2, 3]) 3 长度
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 组合
['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!'] 重复
3 in [1, 2, 3] True 元素是否存在于列表中
for x in [1, 2, 3]: print(x, end=" ") 1 2 3 迭代

嵌套列表

python 复制代码
>>>a = ['a', 'b', 'c']
>>> n = [1, 2, 3]
>>> x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]
>>> x[0]
['a', 'b', 'c']
>>> x[0][1]
'b'

列表比较

python 复制代码
# 导入 operator 模块
import operator

a = [1, 2]
b = [2, 3]
c = [2, 3]
print("operator.eq(a,b): ", operator.eq(a,b))
print("operator.eq(c,b): ", operator.eq(c,b))

# 输出结果
operator.eq(a,b):  False
operator.eq(c,b):  True

python列表函数和方法

序号 函数 描述
1 len(list) 列表元素个数
2 max(list) 返回列表元素最大值
3 min(list) 返回列表元素的最小值
4 list(seq) 将元组转换为列表
5 list.append(obj) 在列表末尾添加新的对象
6 list.count(obj) 统计某个元素在列表中出现的次数
7 list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
8 list.index(obj) 从列表中找出某个值第一个匹配项的索引位置
9 list.insert(index, obj) 将对象插入列表
10 list.pop([index=-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
11 list.remove(obj) 移除列表中某个值的第一个匹配项
12 list.reverse() 反向列表中元素
13 list.clear() 清空列表
14 list.copy() 复制列表
相关推荐
drebander35 分钟前
使用 Java Stream 优雅实现List 转化为Map<key,Map<key,value>>
java·python·list
威威猫的栗子1 小时前
Python Turtle召唤童年:喜羊羊与灰太狼之懒羊羊绘画
开发语言·python
墨染风华不染尘2 小时前
python之开发笔记
开发语言·笔记·python
Dxy12393102162 小时前
python bmp图片转jpg
python
麦麦大数据2 小时前
Python棉花病虫害图谱系统CNN识别+AI问答知识neo4j vue+flask深度学习神经网络可视化
人工智能·python·深度学习
LKID体2 小时前
Python操作neo4j库py2neo使用之创建和查询(二)
数据库·python·neo4j
LKID体2 小时前
Python操作neo4j库py2neo使用之py2neo 删除及事务相关操作(三)
开发语言·python·neo4j
小屁孩大帅-杨一凡2 小时前
Python-flet实现个人视频播放器
开发语言·python·音视频
算家云2 小时前
快速识别模型:simple_ocr,部署教程
开发语言·人工智能·python·ocr·数字识别·检测模型·英文符号识别
Thomas_Cai2 小时前
Python后端flask框架接收zip压缩包方法
开发语言·python·flask