Python列表

1、 列表的定义和基本使用

列表是python中的一种数据类型,可以存放多个数据,列表中的数据可以是任意类型的
列表list ,定义使用[]进行定义

list1 = []
print(list1, type(list1))
list1 = list()
print(list1, type(list1))

# 定义带数据的列表,数据元素之间使用都好隔开
list2 = [1, 2.345, False, 'Python']
print(list2, type(list2))
# 求列表中数据元素的个数,即列表的长度
num = len(list2)
print(num)

# 列表支持下标和切片操作
print(list2[1])
print(list2[-1])
print(list2[1:3])

# 下标操作和字符串中不同的是:字符串不能使用下标修改其中的数据,但是列表可以使用下标修改列表中的数据
list2[0] = 12
print(list2)

list2[-1] = 'java'
print(list2)

在这里插入图片描述

2、遍历

list1 = ['张飞', '赵云', '刘备', '关羽']
for i in list1:  # i表示的就是列表中的每一个数据
    print(i)

print('`' * 40)

j = 0  # j表示下标
while j < len(list1):
    print(list1[j])
    j += 1

在这里插入图片描述

3、向列表中添加数据

# 向列表中添加数据的方法,都是直接在原列表中进行添加的,不会返回新的列表
list1 = ['张飞', '赵云', '刘备', '关羽']
print(list1)
# 列表. append(数据)向列表的尾部追加数据
list1.append('cc')
print(list1)
result = list1.append(11)  # 不要这样书写
# print( result)  # None关键字,表示空
print(list1)
# 列表.insert(下标,数据)在指定的下标位置进行添加数据
list1.insert(5, 'Python')
print(list1)
# print(list1.insert(2,4.14))不能这样书写,None
# 列表.extend(可迭代对象) # str列表,会将可迭代对象中的数据逐个添加到原列表的末尾
list1.extend('java')
print(list1)
list1.extend([1, 'python', 'java'])
print(list1)

在这里插入图片描述

4、列表中的数据查询操作

list2 = [1, 2.345, False, 'Python']
# index( )根据数据值,查找元素所在的下标,找到返回元素的下标,没有找到,程序报错
# 列表中没有find方法,只有index()方法
# 查找2.345在列表中下标
num = list2.index(2.345)  # 1
print(num)
# num1 = my_list.index(100)  # 程序报错,因为数据不存在
# count()统计出现的次数
num3 = list2.count(1)  # 1
print(num3)
# in /not in判断是否存在,存在是True,不存在是False,一般和if结合使用
num4 = 2.345 in list2  # True
print(num4)
num4 = 2.345 not in list2  # False
print(num4)

在这里插入图片描述

5、列表中的删除操作

list1 = [1, 2, 5, 8, 9, 10]
# 1.根据元素的数据值删除remove(数据值),直接原列表中的数据
list1.remove(5)
print(list1)  # [1,2,8,9,10]
# list1.remove(4)程序报错,要删除的数据不存在
# 2.根据下标删除
# 2.1 pop(下标)默认删除最后一个数据,返回删除的内容
num = list1.pop()  # 删除最后一个数据10
print(num)
print(list1)  # [1,2,8,9]
num = list1.pop(2)  # 删除下标为2的数据即8
print(num)
print(list1)  # [1,2,9]
# list1.pop(5)  # 删除的下标不存在,会报错
# 2.2 del_列表[下标]
del list1[1]  # 删除下标为1的数据2
print(list1)
# del list1[10]  # 删除不存在的下标,会报错


在这里插入图片描述

6、列表排序和逆置

# 想要对列表中的数据进行排序,前提是列表中的数据类型是一样的
list1 = [1, 11, 5, 8, 3, 10]
list0 = [1, 11, 5, 8, 3, 10]
# 列表.sort()直接在原列表中进行排序
list1.sort()  # 默认是从小到大排序,即升序
print(list1)  # [1, 3, 5, 8, 10, 11]
# list1.sort(reverse=True)  # 通过reverse=True,从大到小排序
list1.sort(reverse=True)  # 默认是从小到大排序,即升序
print(list1)  # [11, 10, 8, 5, 3, 1]
# 补充: sorted(列表)排序,不会在原列表中进行排序,会得到一个新的列表
list2 = sorted(list0)
list3 = sorted(list0, reverse=True)
print(list0)  # [1, 11, 5, 8, 3, 10]
print(list2)  # [1, 3, 5, 8, 10, 11]
print(list3)  # [11, 10, 8, 5, 3, 1]
print("~" * 30)
list4 = ['a', 'b', 'c', 'd', 'e ']
list5 = ['a', 'b', 'c', 'd', 'e ']
# 逆置
list6 = list4[::-1]  # 得到一个新的列表
print(list4)  # ['a', 'b', 'c', 'd', 'e ']
print(list6)  # ['e ', 'd', 'c', 'b', 'a']
# 在原列表直接逆置列表.reverse( )
list5.reverse()
print(list5)  # ['e ', 'd', 'c', 'b', 'a']


在这里插入图片描述

7、列表嵌套

school_names = [['清华大学', '北京大学'],
                ['北京理工大学', '天津大学', '大连理工大学'],
                ['东北大学', '哈尔滨工程大学']]
print(school_names[1])  # ['北京理工大学','天津大学','大连理工大学']
print(school_names[1][1])  # 天津大学
print(school_names[1][1][1])  # 津
print(school_names[2][0])  # 东北大学
for schools in school_names:
    # print(schools)  # 列表
    for name in schools:
        print(name)

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Redamancy_06

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值