1.已知⼀个列表,求列表中⼼元素
list01=[1,2,3,4,5,6,7,8]
list_lens = len(list01)
if list_lens % 2 != 0:
print(list01[(list_lens-1)//2])
elif list_lens % 2 == 0:
print(list01[list_lens//2-1],list01[list_lens//2])
2.已知⼀个列表,求所有元素和。
list01=[1,2,3,4,5,6,7,8]
sums=0
for x in list01:
sums+=x
print(sums) #36
3.已知⼀个列表,输出所有奇数下标元素。
list01=[1,2,3,4,5,6,7,8]
col=[]
for x in range(1,len(list01),2):
col.append(list01[x])
print(col) #[2, 4, 6, 8]
4.已知⼀个列表,输出所有元素中,值为奇数的。
list01=[1,2,3,4,5,6,7,8]
col=[]
for x in list01:
if x % 2 !=0:col.append(x)
print(col) #[1, 3, 5, 7]
5.已知⼀个列表,将所有元素乘⼆。
创建一个新的列表:
list01=[1,2,3,4,5,6,7,8]
col=[]
for x in list01:
col.append(x*2)
print(col) #[2, 4, 6, 8, 10, 12, 14, 16]
修改列表中元素的值:
list01=[1,2,3,4,5,6,7,8]
for i in range(len(list01)):
num=list01[i]
list01[i]=num*2
print(list01)
6.已知⼀个列表,将所有元素加到第⼀个元素中。
list01=[1,2,3,4,5,6,7,8]
for i in range(1,len(list01)):
list01[0]+=list01[i]
print(list01) #[36, 2, 3, 4, 5, 6, 7, 8]
用sum()函数:
list01=[1,2,3,4,5,6,7,8]
list01[0]=sum(list01)
print(list01)
7.已知⼀个列表A,将奇数位置元素存到B列表中,偶数元素存到C列表中。
使用循环:
A=[1,2,3,4,5,6,7,8]
B=[]
C=[]
for x in range(0,len(A)):
if x % 2 !=0:B.append(A[x])
else:C.append(A[x])
print(B,C) #[2, 4, 6, 8] [1, 3, 5, 7]
使用切片:
A=[1,2,3,4,5,6,7,8]
B=A[1::2]
C=A[0::2]
print(B,C)
8.把A列表的前5个元素复制到B列表中。
A=[1,2,3,4,5,6,7,8]
B=A[0:5]
print(B) #[1, 2, 3, 4, 5]
9.把1----36分别放⼊列表中,计算列表数组对⻆元素之和。 6 * 6的列表
A=[[0]*6 for i in range(6)]
for i in range(0,6):
for j in range(0,6):
A[i][j]=(j+1)+i*6
print(A)
#[[1, 2, 3, 4, 5, 6], [7, 8, 9, 10, 11, 12], [13, 14, 15, 16, 17, 18], [19, 20, 21, 22, 23, 24], [25, 26, 27, 28, 29, 30], [31, 32, 33, 34, 35, 36]]
sums=0
for i in range(0,6):
sums+=A[i][i]
print(sums) #111
10.有⼀个⻓度是10的列表,列表内有10个不重复的数字,要求按从⼤到⼩排序。
A=[1,5,8,2,78,25,36,9,54,10]
print(sorted(A,reverse=True)) #[78, 54, 36, 25, 10, 9, 8, 5, 2, 1]
11.有⼀个⻓度是10的列表,要求删除某⼀个位置的元素
A=[1,5,8,2,78,25,36,9,54,10]
del A[1]
print(A) #[1, 8, 2, 78, 25, 36, 9, 54, 10]
12.有⼀个⻓度是10的列表,按递增排列,⽤户输⼊⼀个数,插⼊适当位置。
A=[1,3,5,7,9,11,13]
num=int(input("请输入一个数字:"))
for i in range(0,len(A)):
item=int(A[i])
if num<=item:
A.insert(i,int(num))
break
elif num>=A[len(A)-1]:
A.append(num)
break
print(A)
#请输入一个数字:8
#[1, 3, 5, 7, 8, 9, 11, 13]
13.有⼀个⻓度是10的列表,数组内有10个⼈名,要求去掉重复的
names = ['James','Amy','Lucy','Caton','Difor','Lucy','Amy','Lily','Alice','Nina']
for x in names:
temp = names.count(x)
if temp >1:names.remove(x)
print(names)
#['James', 'Caton', 'Difor', 'Lucy', 'Amy', 'Lily', 'Alice', 'Nina']
14.把A列表的第三到第六位之间的元素删除。
A=[1,3,5,7,9,11,13,15,17,19]
C=A[0:3]+A[7:]
print(C) #[1, 3, 5, 15, 17, 19]
15.已知A列表, B列表,定义⼀个列表C,要求C包含A,B数组中的数据(⽆重复值)。
A=[1,3,5,7,9,11,13]
B=[1,2,3,4,5,6,7,8,9]
C=A+B
for x in C:
if C.count(x) !=1:C.remove(x)
print(C)
#[11, 13, 1, 2, 3, 4, 5, 6, 7, 8, 9]
网友评论