1.已知一個列表,求列表中心元素灭抑。
list1 = [4,5,76,55,14,67,43]
number = len(list1)
print('列表中心元素為:%s'%(list1[number//2]))
--->55
2.已知一個列表玲献,求所有元素和。
list1 = [4,5,76,55,14,67,43]
item = 0
sum = 0
for item in list1:
sum += item
item +=1
print(sum)
--->264
3.已知一個列表,輸出所有奇數(shù)下標(biāo)元素很泊。
list1 = [4,5,76,55,14,67,43]
for i in range(1,8,2):
print(i)
print(list1[1:7:2])
--->[5, 55, 67]
4.已知一個列表努咐,輸出所有元素中苦蒿,值為奇數(shù)的。
list1 = [4,5,76,55,14,67,43]
for item in list1:
if item%2 !=0:
print(item)
--->5,55,67,43
5.已知一個列表渗稍,將所有元素乘?佩迟。
list1 = [4,5,76,55,14,67,43]
for item in list1:
item *=2
print(item)
--->8,10,152,110,28,134,86
6.已知一個列表,將所有元素加到第?個元素中竿屹。
sum = 4
list1 = [4,5,76,55,14,67,43]
for item in list1[1:]:
sum +=item
del list1[0]
list1.insert(0,sum)
print(list1)
--->[264,5,76,55,14,67,43]
7.已知一個列表A报强,將奇數(shù)位置元素存到B列表中,偶數(shù)元素存到C列表中拱燃。
listA = [4,5,76,55,14,67,43]
listB =listA[1:7:2]
print(listB)
listC = listA[0:7:2]
print(listC)
--->
[5, 55, 67]
[4, 76, 14, 43]
8.把A列表的前5個元素復(fù)制到B列表中秉溉。
listA = [4,5,76,55,14,67,43]
listB = [45,77,88]
new_listA =listA[0:5]
listB =listB+new_listA
print(listB)
--->
[45, 77, 88, 4, 5, 76, 55, 14]
9.把1----36分別放?列表中,計算列表數(shù)組對?元素之和碗誉。6 * 6的列表
for i in range(1,37):
if i%6 !=0:
print(i,end = ' ')
else:
print(i)
sum = (1+8+15+22+29+36)*2
print(sum)
--->
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
222
10.有?個?度是10的列表召嘶,列表內(nèi)有10個不重復(fù)的數(shù)字,要求按從?到?排序诗充。
list1 = [43,34,21,46,11,32,48,86,55,41]
print(list1)
for x in range(len(list1)):
for i in range(len(list1)-1):
new_list = list1[i]
if list1[i] < list1[i+1]:
list1[i] = list1[i+1]
list1[i+1] = new_list
print(list1)
--->
[43, 34, 21, 46, 11, 32, 48, 86, 55, 41]
[86, 55, 48, 46, 43, 41, 34, 32, 21, 11]
11.有?個?度是10的列表苍蔬,要求刪除某?個位置的元素
list1 = [11,22,33,77,88,99,100,44,55,66]# while True:
value =int(input('請輸入要刪除的位置的下標(biāo):'))
del list1[value]
break
print(list1)
--->
請輸入要刪除的位置的下標(biāo):4
[11, 22, 33, 77, 99, 100, 44, 55, 66]
12.有?個?度是10的列表,按遞增排列蝴蜓,?戶輸??個數(shù)碟绑,插?適當(dāng)位置。
list1 = [11,22,33,44,55,66,77,88,99]
value = int(input('請輸入一個整數(shù):'))
for y in range(len(list1)):
if value <= list1[y]:
list1.insert(y,value)
break
print(list1)
--->
請輸入一個整數(shù):34
[11, 22, 33, 34, 44, 55, 66, 77, 88, 99]
13.有?個?度是10的列表茎匠,數(shù)組內(nèi)有10個?名格仲,要求去掉重復(fù)的
list1 = ['張一','張二','張三','張四','張四','張五','張六','張七','張八','張九']
for x in range(len(list1)-1,-1,-1):
if list1[x] == '張四':
list1.pop(x)
print(list1)
--->
['張一', '張二', '張三', '張五', '張六', '張七', '張八', '張九']
14.把A列表的第三到第六位之間的元素刪除。
list1 = [11,22,33,77,88,99,100,44,55,66]
del list1[2:6]
print(list1)
--->
[11, 22, 100, 44, 55, 66]
15.已知A列表诵冒,B列表凯肋,定義?個列表C,要求C包含A,B數(shù)組中的數(shù)據(jù)(?重復(fù)值)
list_A = ['a','c','e','r','e','m']
list_B = [1,2,3,4,5,6]
list_C = []
for x in list_A:
if not x in list_C:
list_C.append(x)
for i in list_B:
if not i in list_C:
list_C.append(i)
print(list_C)
--->
['a', 'c', 'e', 'r', 'm', 1, 2, 3, 4, 5, 6]
1.求s=a+aa+aaa+aaaa+aa...a的值汽馋,其中a是?一個數(shù)字侮东。例例如2+22+222+2222+22222(此時共有5個數(shù)相 加),?幾個數(shù)相加有鍵盤控制豹芯。
a = int(input('請輸入數(shù)字a:'))
number = int(input('請輸入幾個數(shù)相加:'))
sum = 0
for i in range(1, number + 1):
t = 0
for j in range(i):
t = t + 10 ** j
sum +=a*t
print(sum)
--->
請輸入數(shù)字a:2
請輸入幾個數(shù)相加:5
24690
2.打印圖形1
n = 4
for i in range(1, n+1):
for i in range(1, i+1):
print('@' , end='')
print()
--->
@
@@
@@@
@@@@
n = 5
for i in range(1, n+1):
for i in range(1, i+1):
print('@' , end='')
print()
--->
@
@@
@@@
@@@@
@@@@@
3.打印圖形2
n =3
for i in range(n+1):
for j in range(0, n+1 - i):
print(end=' ')
for k in range(2*j-1, n+1):
print("@", end='')
print('')
--->
@
@@@
@@@@@
n =4
for i in range(n+1):
for j in range(0, n+1 - i):
print(end=' ')
for k in range(2*j-1, n+1):
print("@", end='')
--->
@@
@@@@
@@@@@@
4.打印圖形3
n = 3
for i in range(n):
for j in range(n-i):
print('@', end='')
print('')
print()
--->
@@@
@@
@
- 輸?入兩個正整數(shù)m和n悄雅,求其最?大公約數(shù)和最?小公倍數(shù)。
m = int(input('輸入正整數(shù)m:'))
n = int(input('輸入正整數(shù)n:'))
if m<n:
for x in range(1,m+1):
if m%x == 0 and n%x == 0:
pass
print('最大公約數(shù)為%d'%(x))
a = n
while True:
if a%m == 0 and a%n == 0:
print('最小公倍數(shù)為%d' % (a))
a += 1
break
else:
for x in range(1, n + 1):
if m % x == 0 and n % x == 0:
pass
print('最大公約數(shù)為%d' % (x))
a = m
while True:
if a%m == 0 and a%n == 0:
print('最小公倍數(shù)為%d' % (a))
a += 1
break
--->
輸入正整數(shù)m:12
輸入正整數(shù)n:6
最大公約數(shù)為6
最小公倍數(shù)為12
- ?一個數(shù)如果恰好等于它的因?子之和铁蹈,這個數(shù)就稱為 "完數(shù) "宽闲。例例如6=1+2+3.編程 找出1000以內(nèi)的所有 完數(shù)
for x in range(1,1001):
sum = 0
for i in range(1,x):
if x%i == 0:
sum +=i
if x == sum:
print(x)
--->
6
28
496
7.九九乘法表
for i in range(1, 10):
for j in range(1, i+1):
print('%d%d=%d\t'%(i, j, ij), end='')
print()
--->
11=1
21=2 22=4
31=3 32=6 33=9
41=4 42=8 43=12 44=16
51=5 52=10 53=15 54=20 55=25
61=6 62=12 63=18 64=24 65=30 66=36
71=7 72=14 73=21 74=28 75=35 76=42 77=49
81=8 82=16 83=24 84=32 85=40 86=48 87=56 88=64
91=9 92=18 93=27 94=36 95=45 96=54 97=63 98=72 9*9=81
- 一個5位數(shù),判斷它是不不是回?文數(shù)。即12321是回?文數(shù)容诬,個位與萬位相同娩梨,?十位與千位相同。
number = int(input('請輸入一個五位整數(shù):'))
a = number//10000
b = number//1000%10
c = number//100%100%10
d = number//10%1000%100%10
e = number%10
if a == e and b == d:
print('%d是回文數(shù)'%(number))
else:
print('%d不是回文數(shù)'%(number))
--->
請輸入一個五位整數(shù):12321
12321是回文數(shù)
2.打印菱形
n = 4
for x in range(1,n2):
if x<=n:
for num1 in range(n-x):
print(' ', end='')
for num2 in range(x2-1):
print('@', end='')
else:
for new_num1 in range(x - n):
print(' ', end='')
for new_num2 in range((2n-x)2-1):
print('@', end='')
print(' ')
--->
@
@@@
@@@@@
@@@@@@@
@@@@@
@@@
@
3.輸?入?行行字符览徒,分別統(tǒng)計出其中英?文字?母狈定、空格、數(shù)字和其它字符的個數(shù)吱殉。
str = input('請輸入一串字符:')
count1 = 0
count2 = 0
count3 = 0
count4 = 0
for i in str:
if i.isalpha():
count1 += 1
elif i.isspace():
count2 += 1
elif i.isdigit():
count3 += 1
else:
count4 += 1
print('字母個數(shù)為%d,空格個數(shù)為%d,數(shù)字個數(shù)為%d,其他字符個數(shù)為%d' % (count1,count2,count3,count4))
--->
請輸入一串字符: b vgt56tv yy
字母個數(shù)為8,空格個數(shù)為4,數(shù)字個數(shù)為2,其他字符個數(shù)為0