python之基础练习30题
学⽽时习之,不亦说乎!
python是⼀门语⾔,要经常练习,希望我整理出来的这些题⽬对初学者或者经常不⽤python的你有所帮助。
题⽬:
1,九九乘法表
2,⼿动输⼊⼀个字符串,打散放进⼀个列表,⼩写字母从⼤到⼩排列序,⼤写字母保持不变
3,li=[1,2,3,4,5,6,7,8,8]组成多少个互不相同且不重复的两位数
4,计算1++98+99+100,并打印出计算公式
5.列表['alex','egon','yuan','wusir','666']
1.把666替换成999
# 2.获取"yuan"索引
# 3.假设不知道前⾯有⼏个元素,分⽚得到最后的三个元素
6.切割字符串"luffycity"为"luffy","city"
7.求1~100间所有偶数的和(亦可奇数和,分别使⽤for,while循环写)
8.从键盘接收⼀百分制成绩(0~100),要求输出其对应的成绩等级A~E。
# 其中,90分以上为'A',80~89分为'B',70~79分为'C',60~69分为'D',60分以下为'E'。
9.输⼊⼀年份,判断该年份是否是闰年并输出结果。(该程序可以重复使⽤使⽤while True)
# 注:凡符合下⾯两个条件之⼀的年份是闰年。(1)能被4整除但不能被100整除。(2)能被400整除。
10.将列表['alex', 'steven', 'egon'] 中的每⼀个元素使⽤ ‘\_’ 连接为⼀个字符串
11.求100以内不能被3整除的所有数,并把这些数字放在列表sum3=[]⾥,并求出这些数字的总和和平均数。
12.假设⼀年期定期利率为3.25%,计算⼀下需要过多少年,⼀万元的⼀年定期存款连本带息能翻番?
13.猜数游戏。预设⼀个0~9之间的整数,让⽤户猜⼀猜并输⼊所猜的数,如果⼤于预设的数,显⽰“太⼤”;
⼩于预设的数,显⽰“太⼩”,如此循环,直⾄猜中该数,显⽰“恭喜!你猜中了!
14、实现⼀个整数加法计算器
15.实现⽤户输⼊⽤户名和密码,当⽤户名为 seven 或 alex 且密码为 123 时,显⽰登陆成功,否则登陆失败,失败时允许重复输⼊三次 ###
16.使⽤while循环输出2-3++100的和:
17.使⽤ for 循环和 range 实现输出1-2+3-4+5..+99的和
18.使⽤ while 循环实现输出 1,2,3,4,5, 7,8,9, 11,12
19.使⽤ while 循环实现输出 1-100 内的所有奇数
20.摆放家具
需求:
1).房⼦有户型,总⾯积和家具名称列表
新房⼦没有任何的家具
2).家具有名字和占地⾯积,其中
床:占4平⽶
⾐柜:占2平⾯
餐桌:占1.5平⽶
3).将以上三件家具添加到房⼦中
4).打印房⼦时,要求输出:户型,总⾯积,剩余⾯积,家具名称列表
21、M与N的数学运算:⽤户输⼊两个数 M 和 N,其中 N 是整数,计算M 和 N 的5种数学运算结果,
并依次输出,结果间⽤空格分隔。5种数学运算分别是:M 与 N 的和、M 与 N 的乘积、
M 的 N 次幂、M除 N 的余数、M 和 N 中较⼤的值。
22、将输⼊的字符串垂直输出
23、计算2的n次⽅,n由⽤户输⼊
24、成绩转换:编写⼀个学⽣成绩转换程序,⽤户输⼊百分制的学⽣成绩,成绩⼤于或等于
60的输出“pass”,否则输出“fail”,成绩不四舍五⼊。
如何制作一个静态网页25、完美⽴⽅:到⼤于1的4个整数满⾜完美⽴⽅等式:a3=b3+c3+d3(例如123=63+83+103)。
编写⼀个程序,对于任意给定的正整数N(N ≤100),寻所有的四元组(a,b,c,d),
resizebar怎么开启满⾜a3=b3+c3+d3,其中1<a,b,c,d≤N。
26、货币转换:写⼀个程序进⾏货币间币值转换,其中:⼈民币和美元间汇率固定为:1美元 = 6.78⼈民币。
程序可以接受⼈民币或美元输⼊,转换为美元或⼈民币输出。⼈民币采⽤RMB表⽰,美元USD表⽰,
符号和数值之间没有空格。
printf函数的执行顺序
27、⽉份缩写:如果有 months = "Jan.Feb.Mar.Apr.May.Jun.Jul.Aug.Sep.Oct.Nov.Dec.",编写⼀个程序,
⽤户输⼊⼀个⽉份的数字,输出⽉份的缩写。
28、恺撒密码:凯撒密码是古罗马凯撒⼤帝⽤来对军事情报进⾏加解密的算法,它采⽤了替换⽅法对信息中
的每⼀个英⽂字符循环替换为字母表序列中该字符后⾯的第三个字符,假设⽤户可能使⽤的输⼊仅包含
⼩写字母a~z和空格,请编写⼀个程序,对输⼊字符串进⾏凯撒密码加密,直接输出结果,其中空格不⽤进⾏加密处理。
29、3位⽔仙花数计算:“3位⽔仙花数”是指⼀个三位整数,其各位数字的3次⽅和等于该数本⾝。
例如:ABC是⼀个“3位⽔仙花数”,则:A的3次⽅+B的3次⽅+C的3次⽅ = ABC。
请按照从⼩到⼤的顺序输出所有的3位⽔仙花数,并输出结果。
30、购物车功能要求:
要求⽤户输⼊总资产,例如:2000 显⽰商品列表,让⽤户根据序号选择商品,加⼊购物车购买,如果商品总额⼤于总资产,提⽰账户余额不⾜,否则,购买成功。
goods = [
{"name": "电脑", "price": 1999},
{"name": "⿏标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美⼥", "price": 998},
代码:
1,九九乘法表:
for循环:
for i in range(1,10):
for j in range(1,i+1):
print(f"{j}*{i}={j*i}\t",end="")
print()
while循环:
i =1
while i < 10:
j=1
while j < i+1:
print(f"{j}*{i}={j * i}\t", end="")
j+=1
print()
i+=1
2,⼿动输⼊⼀个字符串,打散放进⼀个列表,⼩写字母从⼤到⼩排列序,⼤写字母保持不变
str = input("请输⼊⼀个字符串:")
str_list = list(str)
list =[]
dict={}
for i in range(len(str_list)):
if "a"<=str_list[i]<="z":
list.append(str_list[i])
else:
dict[i]=str_list[i]
list.sort()
for i in dict:
list.insert(i,dict[i])
new_str = "".join(list)
print(new_str)
3,li=[1,2,3,4,5,6,7,8,8]组成多少个互不相同且不重复的两位数
li=[1,2,3,4,5,6,7,8,8]
li2=[]
for i in range(len(li)):
for j in range(len(li)):
if i != j :
str = 10*li[i]+li[j]
li2.append(str)
li2_set = set(li2)
li3=list(li2_set)
print(li3)
4,计算1++98+99+100,并打印出计算公式
sum = 0
list=[]
for i in range(1,101):
list.append(i)
sum+=i网页个人简历模板
list1 =[str(i) for i in list]
# 把列表中的数字以字符串的⽅式存放在新列表中
str_list = "+".join(list1)
print(f"{str_list}={sum}")
5.列表['alex','egon','yuan','wusir','666'](编程)
1.把666替换成999
2.获取"yuan"索引
3.假设不知道前⾯有⼏个元素,分⽚得到最后的三个元素
list = ['alex','egon','yuan','wusir','666']
# 1,
list[-1]="999"
# 2,
print(list.index("yuan"))
# 3,
list1=[]cmainframe类
for i in range(-3,0):
list1.append(list[i])
print(list1)
6.切割字符串"luffycity"为"luffy","city"
str ="luffycity"
str1=str[:5]
str2=str[5:]
print(f"{str1},{str2}")
7.求1~100间所有偶数的和(亦可奇数和,分别使⽤for,while循环写)
# 偶数和
sum = 0
for i in range(1,101):
if i%2 == 0:
sum +=i
print(sum)
# 打印出偶数公式及和
list =[]
sum =0
for i in range(1,101):
if i%2 ==0:
list.append(i)
sum +=i
list1 = [str(i) for i in list]
str_list = "+".join(list1)
print(f"{str_list}={sum}")
i= 1
list=[]
sum =0
while i <101:
if i%2 ==0:
list.append(i)
sum +=i
i +=1
list1 = [str(i) for i in list]
str_list = "+".join(list1)
print(f"{str_list}={sum}")
8.从键盘接收⼀百分制成绩(0~100),要求输出其对应的成绩等级A~E。
其中,90分以上为'A',80~89分为'B',70~79分为'C',60~69分为'D',60分以下为'E'。while True:
str = input("请输⼊分数:")
if str.isdigit():
int_str = int(str)
if 100>=int_str >=90:
print("A")
# break
elif 80<=int_str<=89:
print("B")
# break
elif 70<=int_str<=79:
print("c")
# break
elif int_str<60:
print("E")
# break
else:
print("输⼊分数数值不对,请检查")
else:
print("输⼊⾮数值类型,请输⼊数字类型:")
9.输⼊⼀年份,判断该年份是否是闰年并输出结果。(该程序可以重复使⽤使⽤while True)
注:凡符合下⾯两个条件之⼀的年份是闰年。(1)能被4整除但不能被100整除。(2)能被400整除。while True:
str=input("请输⼊年份:")
if str.isdigit():
int_str = int(str)
if int_str%400 ==0:
print("闰年")
elif int_str%4 ==0:
if int_str%100 ==0:
print("不是闰年")
else:
print("闰年")
else:
print("请输⼊正确的年份")
10.将列表['alex', 'steven', 'egon'] 中的每⼀个元素使⽤ ‘\_’ 连接为⼀个字符串
list = ['alex', 'steven', 'egon']
str = "\_".join(list)
print(str)
11.求100以内不能被3整除的所有数,并把这些数字放在列表sum3=[]⾥,并求出这些数字的总和和平均数sum3 =[]
sum1=0
for i in range(1,101):
if i%3 ==0:
sum3.append(i)
sum1 +=i
sum2 = sum1/len(sum3)
print(sum3)
print(sum1)
print(sum2)
12.假设⼀年期定期利率为3.25%,计算⼀下需要过多少年,⼀万元的⼀年定期存款连本带息能翻番?money = 10000
tr =True
i=0
while tr:
money = money*1.0325
i+=1
if money//10000 >=2:
tr = False
print(money)
print(i)
13.猜数游戏。预设⼀个0~9之间的整数,让⽤户猜⼀猜并输⼊所猜的数,如果⼤于预设的数,显⽰“太⼤”;⼩于预设的数,显⽰“太⼩”,如此循环,直⾄猜中该数,显⽰“恭喜!你猜中了!
#随机设置⼀个数,⽐如7
number = 7
i=True
while i:
num = input("请输⼊你要猜的数字:")
if num.isdigit():
num = int(num)
if num < number:
print("太⼩了")
elif num > number:
print("太⼤了")
elif num == number:
print("恭喜!你猜中了!")
i = False
else:
print("输⼊错误,请重新输⼊")
14、实现⼀个整数加法计算器
while True:
num = input("请输⼊要计算的整数算式:")
sum1 = 0
sum2 =0
num_list = num.split("+")
len_nlist = len(num_list)
for i in num_list:
if i.isdigit():
i = int(i)
sum1 += i
sum2 += 1
else:
print("请输⼊正确的整数加法运算算式")
break
if sum2 == len_nlist:
print(sum1)
15.实现⽤户输⼊⽤户名和密码,当⽤户名为 seven 或 alex 且密码为 123 时,显⽰登陆成功,否则登陆失败,失败时允许重复输⼊三次 ###
tr = True
i = 0
while tr:
user = input("请输⼊⽤户名:")
passwed = input("请输⼊密码:")
if user == "seven":
if passwed.isdigit():
passwed = int(passwed)
if passwed == "123":
print("登录成功")
else:
print("请重新登录,密码错误")
else:
print("请重新登录,密码⾮数字类型")
elif user == "alex":
if passwed.isdigit():
passwed = int(passwed)
if passwed == "123":
print("登录成功")
else:
print("请重新登录,密码错误")
else:
print("请重新登录,密码密码⾮数字类型")
else:
print("⽤户名错误,请重新输⼊")
i +=1
if i == 3:
print("失败已达三次,请明天重试")
tr = False
16.使⽤while循环输出2-3++100的和:
sum= 2
i=2
tr =True
while tr:
if i ==101:
tr = False
if i%2==0:
sum = sum -(i+1)
i+=1
elif i%2==1:
sum += (i+1)
i+=1
print(sum)
17.使⽤ for 循环和 range 实现输出1-2+3-4+5..+99的和
sum=1
for i in range(1,99):
if i%2==1:
sum = sum -(i+1)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论