1.创建数组
s1 = [0]*9 #间接创建(一维)
s1 = [1,2,3,4] #直接创建(一维)
s2 = [[0 for i in range(4)]for i in range(4)] #间接创建(二维)
#浅复制,间接创建(二维),但修改某行元素时,同一列的都会被改
s2 = [[0]*4]*4
s2 = [[1,2,3,4],[5,6,7,8],[9,10,11,12]] #直接创建(二维)
2.列表生成式
d1 = [i*i for i in range(10)]
print("d1=",d1)
d2 = [i*i for i in range(10) if i%2==0]
print("d2=",d2)
d3 = [m+n for m in 'ABC' for n in 'XYZ']
print("d3=",d3)
d4 = [s.lower() for s in ["ABC",'EDG','LSP']]
print("d4=",d4)
#运行结果
d1= [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
d2= [0, 4, 16, 36, 64]
d3= ['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']
d4= ['abc', 'edg', 'lsp']
3.在数组中插入数据(while循环版)
a = [1,3,5,7,9,11,13,15,17,19,0]#最后一位空出来给待插入的数
num = 6 #待插入数据
i = 0
while i<len(a): #循环查找变量插入位置
if a[i]<num:
i = i + 1
else:
break
j = len(a)-1
while j > i: #循环控制向后移位
a[j] = a[j-1] #注意移动位置是从后向前移动
j = j - 1
a[i] = num
print(a)
4.在数组中删除数据(while循环版)
a = [1,3,5,7,9,11,13,15,17,19]
num = 9 #需要删除的元素
i = 0
while i<len(a): #查找元素所在位置
if a[i] == num:
break
i = i + 1
while i<len(a)-1:
a[i] = a[i+1]
i = i+1
a[i] = 0 #末尾清空
print(a)
5.在数组中插入数据(for循环版)
a = [1,3,5,7,9,11,13,15,17,19,0] #最后一位空出来给待插入的数
num = 6 #待插入数据
for i in range(len(a)):
if a[i] > num:
break
for j in range(len(a)-1,i,-1): #循环控制向后移位
a[j] = a[j-1] #注意移动位置是从后向前移动
a[i] = num
print(a)
6.在数组中删除数据(for循环版)
a = [1,3,5,7,9,11,13,15,17,19]
num = 9 #需要删除的元素
for i in range(len(a)): #查找元素所在位置
if a[i] == num:
break
for j in range(i+1,len(a)):
a[i] = a[i+1]
i = i + 1
a[len(a)-1] = 0 #末尾清空
print(a)
7.常用的列表操作
1)s.append(x)
#在列表的最后追加元素x,x整体被作为单个元素追加到最后
s = [1,2,3,4]
s.append(["5",6])
#结果为[1,2,3,4,["5",6]]
2)s.insert(i,x)
#在s的第i索引位置增加元素x,x整体被作为单个元素插入序列
s = [1,2,4,5]
s.insert(2,[5,6])
#结果为[1,2,[5,6],3,4]
3)s.clear()
#清空列表s中的所有元素
s = [1,2,3,4]
s.clear()
#结果为[]
4)s.pop(i)
#将s第i索引位置的元素删除,默认值为i值为-1,
s = [1,2,3,4,5]
s.pop()
#结果是[1,2,3,4]
5)s.remove(x)
#将列表中第一次出现的x字符删除
s = [1,2,2,3,2,4]
s.remove(2)
print(s)
#结果是[1,2,3,2,4]
6)s.reverse()
#将s的内容反转
s = [1,2,3,4,5]
s.reverse()
print(s)
#结果是[5,4,3,2,1]
7)s.sort()
#将s的内容升序排列
s = [2,3,6,1,4,5]
s.sort()
print(s)
#结果是[1,2,3,4,5,6]
评论 (0)