赞
踩
1,列表元素去重
#方法1,通过遍历去重。
lst=[10,20,30,10,20] #创建一个列表
lst2=[] #创建一个空列表
for i in lst: #赋值i,将列表lst放到for循环中
# print(i) #输出打印i,i依次打印10,20,30,10,20
if i not in lst2: #判断输出的i值是否不在lst2列表中
lst2.append(i)
#如果i值不在lst2列表中,就将i值加入到lst2列表。
print(lst2) #打印输出lst2列表
#方法2,采用set()集合去重
new_list = list(set(lst))
print(new_list)
2,计算前n个数字的平方和,输入数字N,计算1^2+2^2+3^2+...+N^2
n=int(input('请输入一个整数数字:')) #声明输入变量n
lst1=[] #声明空列表lst1
a=0 #声明变量a用于存储数据。
while n > 0: #while循环判断n如果大于0,进入循环
s = n - 1 #声明变量s的值是n-1
n-=1 #然后执行n-1赋值给n
if s > 0: #判断如果s>0
lst1.append(s) #就将s输出的值存放到列表lst1当中。
for item in lst1: #声明变量item,循环输出lst1列表中的值
a+=item**2 #声明变量a,a的值为item的平方加item的平方
print(a) #最后输出a的值,即为整数N的平方和。
3,计算列表内元素的和
lst3=[1,2,3,4,5]
d=0
for j in lst3:
d+=j
print(d)
4,计算数字范围中所有的偶数,即输入起始值和结束值,输出这个范围内所有的偶数到列表当中
lst4=[]
begin=int(input('请输入起始数值:'))
end=int(input('请输入结束数值:'))
for i in range(begin,end):
if i%2 == 0:
lst4.append(i)
print(lst4)
5,输入起始值和结束值生成列表,清除列表中所有的偶数,输出元素都为奇数的列表
begin=int(input('请输入起始数值:'))
end=int(input('请输入结束数值:'))
lst5=[]
for i in range(begin,end):
if i%2 != 0:
lst5.append(i)
print(lst5)
6,给列表内的元素[数字,字母]做排序
lst5=[10,98.7,87.7,78.5,37.6,53.2,29,109.79,58] #对数字做排序
lst5.sort()
print(lst5)
lst6=['a','b','s','d','e','f','g','h'] #对字母做排序
lst6.sort()
print(lst6)
7,根据学生的考试成绩做降序排序
scores={'张三':98,'李四':100,'王五':76,'陈六':82,'Jack':89,'姚爽':78}
r = sorted(scores.items(),key=lambda x:x[1],reverse=True)
print(r)
8,给出一个列表,求列表中的最大值和最小值
data = [10,23,35,47,53,62,37,17,37,29,43,8,23,32]
max_data = data[0]
min_data = data[0]
for i in data:
if i > max_data:
max_data = i
elif i < min_data:
min_data = i
print(f'数组中的最大值为{max_data}')
print(f'数组中的最小值为{min_data}')
9,求1到100相加的和
count = 0
for i in range(1,101):
count+=i
print(f'1至100之间的和为{count}')
10,输入两个数字,求数字相加之和。
number1=float(input('请输入数字:'))
number2=float(input('请输入数字:'))
sum = number1 + number2
#赋值变量sum为变量number1+number2的和。
print(f"{number1} + {number2} = {sum}")
11,分萝卜游戏,输入萝卜的个数(N>3),给小黑兔、小白兔、小灰兔 三只兔子分萝卜,要求小黑兔分到的萝卜数要大于等于小白兔的萝卜数量,小白兔分到的萝卜数要大于等于小灰兔的萝卜数量。根据输入的萝卜数输出不同的分法。
题目解析:
假设小黑兔分到x,小白兔分到y,小灰兔分到z。
则 x+y+z = 萝卜总数
且 x>=y>=z
萝卜总数需要手动输入,用到input函数。
count = 0
total = int(input('请输入萝卜的个数:'))
if total > 3:
for x in range(total):
for y in range(total):
z = total - x - y
if z > 0 and x >= y and y >= z and x + y + z <= total:
count+=1
print('='*60)
print(f'第{count}种分法,小黑兔分了{x}根萝卜,小白兔分了{y}根萝卜,小灰兔分了{z}根萝卜')
else:
print('您输入的数据不符合要求,请重新输入')
12,根据两张列表提供的数据,如果两张列表中的元素相加等于10,则输出这两个数字到新列表当中。
data1 = [1,2,3,4,5,6,7,8,9,10,11,12,13,15,17]
data2 = [-1,2,1,3,4,5,6,7,8,9,10,11,-2]
for i in data1:
for item in data2:
if i + item == 10:
print([i,item])
13,根据给到的列表计算列表当中有多少个元素。
d = [1, 2, 3, 4, 5, 7, 8, 9, 10]
count = 0
for i in d:
count+=1
print(count)
14,输入数字(整数),求这个数字的阶乘
s = 1
n = int(input('请输入1个数字:'))
for i in range(1,n+1):
s=s * i
print(s)
15,存款多少年才能翻倍。1万本金,利息0.0325每年,问连本带息多少年能翻倍
a = 10000
count = 0
while a < 20000:
a = a + a * 0.0325
count+=1
print(f'第{count}年时,存款可以翻倍。且此时存款金额为{a}')
16,输入一个包含字符'a'的字符串(字符串长度小于1000),输出字符串中字符'a'的个数
word = input('输入一个包含字符\'a\'的字符串:')
sub ='a'
s = word.count(sub)
print('输出一个整数,表示字符串中字符\'a\'的个数是',s)
17,输入用户名(admin),密码(8888),判断用户名密码输入是否正确,3次机会,如果输入3次后依然判断用户名或密码错误,则退出程序。
for item in range(3):
name = input('请输入用户名: ')
password = input('请输入密码: ')
if password == '8888' and name == 'admin':
print('密码输入正确!')
break
else:
print('用户名或密码错误!')
18,折纸上月球,地球到月球的最小距离是363300公里,一张A4纸的厚度为0.088毫米,请问需要折几次可以登上月球
gap = 363300000000
paper = 0.088
i = 0
while paper < gap:
paper = paper * 2
i+=1
print(i)
print(paper)
19,打印输出九九乘法口诀
print('=====打印9*9乘法口诀表=====')
for i in range(1,10):
for j in range(1,i+1):
print(i,'*',j,'=',i*j,end='\t')
print()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。