Python列表-B06

列表的定义

在Python中,列表是由一系元素按特定顺序构成的数据序列,这样就意味着定义一个列表类型的变量,可以保存多个数据,而且允许有重复的数据

items1 = [35, 12, 99, 68, 55, 87]
items2 = ['Python', 'Java', 'Go', 'Kotlin']

除此以外,还可以通过Python内置的list函数将其他序列变成列表。准确的说,list并不是一个函数,而是创建列表对象的构造器(后面会讲到对象和构造器这两个概念)。

items1 = list(range(1, 10))
print(items1)    # [1, 2, 3, 4, 5, 6, 7, 8, 9]
items2 = list('hello')
print(items2)    # ['h', 'e', 'l', 'l', 'o']

列表的创建方式

创建列表的方式1:字面量语法

list1 = ['apple', 'orange']
print(list1)        # ['apple', 'orange']

创建列表的方式2:构造器语法

list2 = list(range(1, 10))
print(list2)        # [1, 2, 3, 4, 5, 6, 7, 8, 9]

创建列表的方式3:生成式(推导式)语法

list3 = [i ** 2 for i in range(1, 10)]
print(list3)        # [1, 4, 9, 16, 25, 36, 49, 64, 81]

# 获取列表元素的个数---->len()

print(len(list3))   # 9

遍历列表中的元素

方式1:

for i in range(len(list1)):
    print(list[i])              # list[0]   list[1]

方式2:

for x in list1:
    print(x)                    # apple  orange

方式3:

for i, x in enumerate(list1):
    print(i, x)                # 0 apple    1 orange

列表的运算

# 重复运算

list4 = [1, 10, 100] * 5
print(list4)       # [1, 10, 100, 1, 10, 100, 1, 10, 100, 1, 10, 100, 1, 10, 100]

# 成员运算

print(10 in list4)        # True
print(5 in list4)         # False
print(5 not in list4)     # True

# 列表的合并

list5 = [1, 3, 5, 7]
list6 = [4, 4, 8]
temp=list5+list6
print(temp)            # [1, 3, 5, 7, 4, 4, 8]

# 列表的索引

nums=[35, 98, 120, 27, 66] 
print(nums[0],nums[-5])     #打印列表中第0和第-5个数,35,35
print(nums[2],nums[-3])     ##打印列表中第2和第-3个数,120,120

# 列表的切片

nums=[35,12,97,55,68,73,49,90,20]
print(nums[2:])#从第三个开始
print(nums[:])#与原来一样
print(nums[::-1])#反转全取
print(nums[1:3])#取第二个及第三个
print(nums[2:7:2])#取第三个到第7个之间,步长2
print(nums[10:15])#超出范围,空列表
print(nums[5:1])#前大后小,空列表(若加负数步长就不是空列表了)

输出结果依次为:

[35, 12, 97, 55, 68, 73, 49, 90, 20]
[20, 90, 49, 73, 68, 55, 97, 12, 35]
[12, 97]
[97, 68, 49]
[ ]
[ ]

# 列表的比较(要相同类型,比如不能整型与字符串进行比较)

list7 = list(range(1, 8, 2))
list8 = [1, 3, 5, 7, 9]
#比较两个元素是否一一相等
print(list5==list7)       # True
print(list8==list7)       # False
print(list8!=list7)       # True
#比较两个列表的对应元素的大小:不看元素多少,从第一个元素开始一一比大小
print(list7<list8)        # True

#字符串比较:比较字符对应的编码,英文比较a,b,c,d....z;汉语,比较编码;都是从第一个字符开始
#ord()函数----> 查看字符对应的编码
#chr()函数----> 将编码还原字符

列表的方法

#找元素
#index()---->查找元素在列表中的索引(下标)
if 'b' in items:
    print(items.index('b'))

# count()---->统计元素在列表中出现的次数
print(items.count('a'))

# 添加元素
items.append('b')   # 在列表尾部增加元素
print(items)
items.insert(1,'s')   # 在指定位置增加元素
print(items)
#删除元素
items.pop()   #删除最后一个
items.pop(4)  #删除指定的
items.remove('a')    #指定删除的那个,若有重复的,删的是第一个
print(items)
# 清空元素
items.clear()
print(items)
items=['b','g','a','w','p','a']
# 反转
items.reverse()
print(items)
# 排序(可以修改reverse参数控制升序或降序)
items.sort()  #升序
print(items)

items.sort(reverse=True)#降序
print(items)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值