Python( Day 4 ) :列表

一、列表

 初识列表

1,字符串的缺点:
1,只能存储少量的数据。
2,s = '1True[1,2,3]' 无论索引,切片 获取的都是字符串类型,单一,转化成它原来的类型还需要再一步转换。
int(s[0])


2,python基础数据类型之一:list列表。
列表是以中括号组成,每个元素以逗号隔开的,容器型数据类型。
[1, '太白', [1,2,3],True, {'name': 'alex'}, (22,33)]
其它语言:js语言中叫数组。
列表是一个有序的可以存储大量的数据的数据类型。

  3,操作
1 列表的切片
2 列表的常用操作

4, 程序中如果需要你构建一个容器型数据并且是按照顺序存储的大量的数据,你要用到列表。

二、列表的操作

2.1:列表的索引与切片

l1 = ['一帆', 100, 'py', 'code', 'wyf', 'students', 'teacher']

1,列表的索引
ret = l1[0]
ret1 = l1[1]
print(ret1,type(ret1))
print(l1[-1])
print(l1[-2])

2,切片:  顾头不顾尾
print(l1[:4])
print(l1[:5:2])

倒叙取值
print(l1[-1:-4:-1])

2.2:列表的常用操作:
  增  删  改  查

l1 = ['一帆', 100, 'py', 'code', 'wyf', 'students', 'teacher']

增:
3,append 追加
l1.append(
'yifan') l1.append(100) l1.append([1, 2, 3]) print(l1) 4,insert 插入 l1.insert(1,'小潘') 5,extend 迭代着追加 l1.extend('alex') l1.extend(['肖锋', 666])
6,pop 按照索引删除,会将删除的元素作为返回值返回
ret = l1.pop(0)
print(ret)

7,remove 按照元素删除
ret = l1.remove('武大')
print(ret)

8,clear 清空列表
l1.clear()

9,del

1,按照索引删除
2,按照切片(可以加步长)删除
3,删除整个列表

del l1[-2]
del l1[1:]
del l1[::2]
del l1



10,改某个元素
print(l1[0]) l1[0] = '男神'
切片改 l1[:3] = 'abc' l1[:3] = 'abcdefghigk'
切片(步长) 改 必须一一对应 l1[1:4:2] = 'a' l1[1:4:2] = 'a2' l1[1:4:2] = [1,2,3] # 错误

11,按照索引,按照切片(步长查询)

for 循环 for i in l1: print(i) print(l1)
其他方法:
l1 = ['一帆', '小白', '张老师', '一帆', '一帆']
12,len
print(len(l1))  # 获取列表的长度(总个数)

13,count 计算某个元素出现的次数 print(l1.count('一帆'))
14,index 通过元素找索引,找到第一个就返回,找不到就报错
print(l1.index('小')) print(l1.index('一帆')) print(l1.index('一帆1'))

l1
= [4, 5, 3, 9, 8, 7, 6, 1] 15,sort 从小到大排序 l1.sort() l1.sort(reverse=True) # 从大到小 l1.reverse() # 反转 print(l1)

二、列表的嵌套

l1 = [1, 2, 'yifan', [1, 'wang', 3,]]

'''
1, 将l1中的'yifan'变成大写并放回原处。
2,给小列表[1,'wang',3,]追加一个元素,'ppts'。
3,将列表中的'wang'通过字符串拼接的方式在列表中变成'wangsd'
'''
1
print(l1[2])
print(l1[2].upper())
l1[2] = l1[2].upper()
print(l1)

2
print(l1[-1])
small_l = l1[-1]
small_l.append('ppts')
print(l1)

3
print(l1[-1][1])
print(l1[-1][1] + 'sd')
l1[-1][1] = l1[-1][1] + 'sd'
# l1[-1][1] += 'sd'
print(l1)

三、元组

可索引,切片
print(tu1[1])
print(tu1[:3])

元组只能查不能改
索引,切片(步长) 查询

for i in tu1: print(i) print(len(tu1)) print(tu1.count('alex')) print(tu1.index('alex')) 可以删除元组 del tu1 print(tu1) 元组 只是不能修改第一层, tu1 = (1, 'alex', [1,2,3], True, (1,2,3)) 儿子不能改,孙子可能改。 tu1[2].append('小白') tu1.append(666) print(tu1)

四、range

range(1,10)  # 顾头不顾尾
print(range(1,10))
for i in range(1,10):
    print(i)

1 ~ 100 for i in range(1,101): print(i)
for i in range(2, 101, 2): print(i)
10 ~ 1 for i in range(10, 0, -1): print(i)
for i in range(10): print(i)
# 应用: # range多与for循环配合。 l1 = ['yifan', 'wang', '小白', 100, 1, 2, 3] for i in range(len(l1)): print(i)

猜你喜欢

转载自www.cnblogs.com/Quantum-World/p/10479119.html