python数据类型-列表(list)[亲测有效]

python数据类型-列表(list)[亲测有效]python中列表是最长用的数据类型之一,有多个元素组成的集合,每个元素有多一个位置或者叫索引,索引的值从0开始,往后顺序递推,最大值为列表长度

python中列表是最常用的数据类型之一,由多个元素组成的集合,每个元素都有一个位置或者叫索引,索引的值从0开始,往后顺序递推,最大值为列表长度-1

例如

aa = [1, 2, 3, 4, 5]

print(aa[0])  # 1
print(aa[1])  # 2
print(aa[2])  # 3

常用方法

索引、切片

#  索引 切片
l = ['a', 'b', 'c', 'd', 'e', 'f']
# 优先掌握部分
print(l[1:5])
print(l[1:5:2])
print(l[2:5])
print(l[-1])
"""
['b', 'c', 'd', 'e']
['b', 'd']
['c', 'd', 'e']
f
"""
# 了解
print(l[-1:-4])
print(l[-4:-1])
print(l[-4:])
l = ['a', 'b', 'c', 'd', 'e', 'f']
print(l[-2:])
"""
[]
['c', 'd', 'e']
['c', 'd', 'e', 'f']
['e', 'f']
"""

追加元素append()

hobbies = ['play', 'eat', 'sleep', 'study']
hobbies.append('girls')
print(hobbies) # ['play', 'eat', 'sleep', 'study', 'girls']

删除元素

pop()

如果pop()里面没加参数 则默认删除最后一个元素

hobbies = ['play', 'eat', 'sleep', 'study', 'run', "girl"]
x = hobbies.pop(1)  # 不是单纯的删除,是删除并且把删除的元素返回,我们可以用一个变量名去接收该返回值
print(x)
print(hobbies)

x = hobbies.pop(0)
print(x)

x = hobbies.pop(0)
print(x)

x = hobbies.pop()
print(x)
"""
eat
['play', 'sleep', 'study', 'run', 'girl']
play
sleep
girl
"""

del

del和pop() 不一样, 他没有返回值,只是单纯的将参数里面索引对应的元素从列表里面删除

这种删除方式不光在列表中有用,在后面的元组和字典里也是有用的

hobbies = ['play', 'eat', 'sleep', 'study']
del hobbies[1]  # 单纯的删除
print(hobbies)  # ['play', 'sleep', 'study']

remove()

remove()参数是具体的元素值,不是索引,也没有返回值

hobbies = ['play', 'eat', 'sleep', 'study']
hobbies.remove('eat')  # 单纯的删除,并且是指定元素去删除
print(hobbies)  # ['play', 'sleep', 'study']

用append()和pop()队列和堆栈

队列:是一种数据结构,其特点是先进先出,就和排队一样,排在最前面的人优先买到东西

堆栈: 是一种数据结构,其特点是后进先出,就和往桶里面放东西一样,最后放进去的,往往是最先拿出来

# 队列:先进先出
queue_l = []
# 入队
queue_l.append('first')
queue_l.append('second')
queue_l.append('third')
print(queue_l)  # ['first', 'second', 'third']
# 出队
print(queue_l.pop(0))  # first
print(queue_l.pop(0))  # second
print(queue_l.pop(0))  # third
# 堆栈:先进后出,后进先出
l = []
# #入栈
l.append('first')
l.append('second')
l.append('third')
# #出栈
print(l)  # ['first', 'second', 'third']
print(l.pop())  # third
print(l.pop())  # second
print(l.pop())  # first

计算列表的长度

hobbies=['play','eat','sleep','study']
print(len(hobbies))  # 4

列表是否包含某个元素

对于字符串来说也是可以的

#     包含in
hobbies = ['play', 'eat', 'sleep', 'study']
print('sleep' in hobbies)  # True

msg = 'hello world sz'
print('sz' in msg)  # True

插入元素insert()

hobbies = ['play', 'eat', 'sleep', 'study', 'eat', 'eat']
hobbies.insert(1, 'walk')
print(hobbies)
hobbies.insert(1, ['walk1', 'walk2', 'walk3'])
print(hobbies)
"""
['play', 'walk', 'eat', 'sleep', 'study', 'eat', 'eat']
['play', ['walk1', 'walk2', 'walk3'], 'walk', 'eat', 'sleep', 'study', 'eat', 'eat']
"""

统计个数count()

hobbies = ['play', 'eat', 'sleep', 'study', 'eat', 'eat']
print(hobbies.count('eat'))  # 3

列表合并extend()

list1.extend(list2) 将list2中的元素从list1的末尾添加上list1中

hobbies = ['play', 'eat', 'sleep', 'study', 'eat', 'eat']
hobbies.extend(['walk1', 'walk2', 'walk3'])
print(hobbies)  
# ['play', 'eat', 'sleep', 'study', 'eat', 'eat', 'walk1', 'walk2', 'walk3']

获取某个元素的索引index()

如果列表中有当前元素,则返回当前元素第一次出现的索引
如果列表中没有当前元素,没有就报错
hobbies = ['play', 'eat', 'sleep', 'study', 'eat', 'eat']
print(hobbies.index('eat'))  # 1
print(hobbies.index('girl'))  # 报错

清空元素clear()

hobbies = ['play', 'eat', 'sleep', 'study', 'eat', 'eat']
hobbies.clear()
print(hobbies)  # []

列表拷贝copy()

列表拷贝属于浅拷贝, 修改列表里面的元素会相互影响,切记,这里不展开说,后面会详细说

hobbies = ['play', 'eat', 'sleep', 'study', 'eat', 'eat']
l = hobbies.copy()  # ['play', 'eat', 'sleep', 'study', 'eat', 'eat']
print(l)

列表反转reverse()

l = [1, 2, 3, 4, 5]
l.reverse()
print(l)  # [5, 4, 3, 2, 1]

列表排序sort()

l = [100, 9, -2, 11, 32]
l.sort()
print(l)  # [-2, 9, 11, 32, 100]

l = [1, 4, 5, 2, 6]
l.sort(reverse=True)
print(l)  # [6, 5, 4, 2, 1]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/11756.html

(0)

相关推荐

  • mysql增加删除列_mysql数据库添加列

    mysql增加删除列_mysql数据库添加列alter table table_name drop column create_time; alter table table_name add column create_time times…

    2023-02-07
    94
  • 字节跳动 data数据平台_clickhouse github

    字节跳动 data数据平台_clickhouse github更多技术交流、求职机会、试用福利,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 ClickHouse 作为目前业内主流的列式存储数据库(DBMS)之一,拥有着同类型 DBMS 难以企及

    2023-05-24
    87
  • pikachu—SQL注入[通俗易懂]

    pikachu—SQL注入[通俗易懂] 1、产生原因 SQL注入漏洞,主要是开发人员在构建代码时,没有对输入边界进行安全考虑,导致攻击者可以通过合法的输入点提交一些精心构造的语句,从而欺骗后台数据库对其进行执行,导致数据库信息泄漏…

    2023-03-19
    817
  • Python中write()的用法和实例整理

    Python中write()的用法和实例整理Python中的write()方法是文件对象的一种方法,它可以向文件中写入字符串或字节流。在文件对象被创建后,用write()方法向其中写入的内容会原封不动地保存到磁盘上。

    2024-01-21
    49
  • r语言anova函数_r语言单因素方差分析

    r语言anova函数_r语言单因素方差分析方差分析是一种常见的统计模型,顾名思义,方差分析的目的是比较平均值。为了说明该方法,让我们考虑以下样例,该样例为学生在硕士学位课程中的最终统计考试成绩(分数介于0到20之间)。这是我们的因变量 。“分组”变量将是学生参加辅导课的方式,采用“自愿参与”,“非自愿参与”的方式。最后是…

    2023-08-15
    73
  • USB-C数字音频三合一扩展坞深度解析「建议收藏」

    USB-C数字音频三合一扩展坞深度解析「建议收藏」现在的手机屏幕越来越大,伴随着游戏视频的大量播放,手机的耗电速度也是在迅速增长,然而市面很多手机目前单单只有一个USB-C接口,并且将3.5mm耳机音频接口功能整合到了USB-C接口里。

    2023-07-22
    71
  • 代码整洁之道总结_记录代码的笔记软件

    代码整洁之道总结_记录代码的笔记软件前言《代码整洁之道》在业内有很高的知名度,被诸多前辈推荐给后来者阅读。本书以循序渐进改造一个小程序的方式,演示了一个程序可能的各种设计。

    2022-12-14
    101
  • MySQL数据库基础_易码黄了吗

    MySQL数据库基础_易码黄了吗大家好!我是黄啊码,今天没继续select * 了吧,如果还继续,那接下来的课程先别学,回去好好把之前的课程重复复习一遍,学明白了我们再会?废话不多说,学今天的课程之前我们先来说说这几个词是怎么个执行

    2023-05-27
    81

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注