一、列表
1、1列表:python基础数据类型之一:其他语言也有列表的概念,js 数组,可索引 ,可切片,可加步长
1、2列表的索引,切片,切片+ 步长
结果:
注意:列表里元素的数据类型,就是它本身的属性
二、列表的索引,切片,切片+步长
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
print(li[:4]) # 切片也是顾头不顾腚的原则
print(li[::2])
print(li[-1:-4:-2])
print(li[-1:2:-2]) # 反向切片
三、列表的 增、删、改 、查
增:方法一:
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
# 增
# (1)append 追加
li.append('小温老师') # 这是追加的动作
print(li)
增:方法二:
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
li.insert(1, '元宝') # 在指定索引的位置添加
print(li)
增:方法三:
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
# extend 跌带着追加
li.extend('abc') # 拆分开来追加
li.extend([111,222,333,])
li.extend(['alex','sb']) # 不能追加整数,因为整数不能拆分
print(li)
删:方法一:
# 删
# (1)pop按照索引去删除
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
ret = li.pop(0)
print(ret) # 返回值
print(li)
删:方法二:
# (2) remove 按照元素去删除
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
li.remove('alex')
print(li)
删:方法三:
# (3)clear 清空
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
li.clear() # 直接清空列表
print(li)
删:方法四:
# (4) del 功能很强大,有四种方法
# 1 按照索引删除
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
del li[0]
print(li)
# 2 可以按照切片删除(可以加步长)
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
del li[:3]
del li[:4:2]
print(li)
# 3 内存级别的删除整个列表
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
del li
print(li)
改:方法一:
# (1)按照索引改
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
li[2] = '男神'
li[-1] = '泰迪' # 将内容赋值给列表的指定位置
print(li)
改:方法二:
# (2)按照切片(加步长)
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
#li[:2] = 'sbsbsb' # 将切片的内容全部删除,再迭代添加
# li[:4] = [11,22,33,44,55,66] # 将切片的内容全部删除,再迭代添加
li[:3:2] = 'af' # 将切片的内容全部删除,再迭代添加,一一对应
print(li)
结果:
['a', 100, 'f', [1, 2, 3], {'name': '太白'}, (22, 33)]
查:方法一
# (1)索引,切片,切片+步长
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
print(li[1])
print(li[:3])
print(li[:4:2])
查:方法二:
# (2)for 循环
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
for i in li: # 通过for循环来查看每个元素
print(i)
查:方法三:
# (3) 其他方法
li = ['alex', 100, True, [1, 2, 3], {'name': '太白'}, (22, 33)]
print(len(li)) # 查询总个数
print(li.count('alex')) # 查询某个元素出现的次数
# index 通过元素来找索引
print(li.index('alex'))
四、列表的排序
l2 = [1, 5, 8, 7, 4, 3, 2] # 按照ASCII码来排序
#l2.sort() # 从小到大排序
l2.sort(reverse=True) # 从大到小排序
print(l2)
五、元组
六、range用法
range:自定制的数字范围的可迭代对象,类比成列表
for i in range(1,20): # 循环打印
print(i)
for i in range(1,20,2): # 循环打印,加步长
print(i)
七、in用法
打印判断结果
八、join 的用法
li = ["alex", "eric", "rain"]
利用下划线将列表的每一个元素拼接成字符串"alex_eric_rain"
li = ["alex", "eric", "rain"]
l2 = '_'.join(li)
print(l2)
结果为:
alex_eric_rain
也可以join 字符串
l3 = 'sbsbsb'
l4 = '_'.join(l3)
print(l4)
结果为:
s_b_s_b_s_b