用户登录注册案例
while True:
print("\t\t\t英雄商城登录界面\n") print("~*"*38)
print("\t\t\t1.用户登录\n")
print("\t\t\t2.用户注册\n")
print("\t\t\t3.退出系统\n") print("~*"*38)
choice = input("请输入您的选择:")
if choice == "1":
username = input("请输入您的用户名:") password = input("请输入您的密码:")
if username == "admin" and password == "111111":
print("恭喜您,登录成功~") while True:
print("\t\t\t英雄商城首页\n") print("~*"*38)
print("\t\t\t1.进入英雄商店\n")
print("\t\t\t2.休闲小游戏\n")
print("\t\t\t3.退出登录\n") print("~*"*38)
choice = input("请输入您的选择:") if choice == "1":
print("新款皮肤2.8折,您需要支付50")
num = int(input("请输入您要购买的数量:")) sum = num * 50
print("您购买的皮肤,需要支付的金额是:",sum) pay = int(input("请支付商品需要的金额:"))
#循环 支付错误重新支付
if pay == sum :
print("恭喜,购买成功!") else:
print("抱歉,支付金额有问题,请重新支付") elif choice == "2":
print("成功进入休闲小游戏") #继续优化else:
break
else:
print("用户名或密码错误,请重新登录,按任意键继续:") elif choice == "2":
phone = input("请输入您要注册的手机号:") a = len(phone)
if a == 11:
b = input("请输入短信验证码:") c = len(b)
if c == 6:
password1 = input("请输入密码:") password2 = input("请再次确认密码:")
if password1 == password2 and len(password1) <= 8:
print("恭喜您,注册成功") else:
print("两次密码输入不一致或设置密码过短,请重新注册")
else:
print("短信验证码输入有误,请重新输入")
else:
print("手机输入错误,请重新输入") elif choice == "3":
break
求50~150之间的质数是那些?
def zhishu(num):
for i in range(2,num//2+1):
if num%i==0:
return False
return True
for i in range(50,151):
if zhishu(i):
print(f"{i}是质数")
打印输出标准水仙花数,输出这些水仙花数
def num1():
for num in range(100,1000):
i = num // 100
j = num // 10 % 10
k = num % 10
if num == i ** 3 + j ** 3 + k ** 3:
print ("输出的水仙花数为:%s"%(num))
num1()
验证:任意一个大于9的整数减去它的各位数字之和所得的差,一定能被9整除.
num = int (input("请输入大于9的数字:"))
if num<100:
i=num%10
j=num//10
sums=i+j
print(sums)
if (num-sums)%9==0:
print("该数能够被9整除,验证成功")
else:
print("该数能够被9整除,验证失败")
elif num>=100 and num<=1000:
i=(num %100)%10
j= (num %100)//10
k=num//100
sums=i+j+k
print(sums)
if (num -sums)/9==0:
print("该数能够被9整除,验证成功")
else:
print('这个数不能被9整除,验证失败')
一个五位数,若在它的后面写上一个7,得到一个六位数A, 若在它前面写上一个7,得到一个六位数B,B是A的五倍,求此 五位数.
def num():
for i in range(10000,100000):
num1=i * 10 + 7
num2=i + 700000
if num2==5*num1:
print(i)
num()
有一堆硬币,每次只能拿一个或者两个,求最少多少次可以拿完硬币 [10, 8, 5, 3, 27, 99]
方法一
coin=[10, 8, 5, 3, 27, 99]
x=0
for i in coin:
if i%2==0:
x+=i//2
else:
x+=i//2+1
print("最少%s"%(x)+"次可以拿完硬币")
# 方法二,递归法
def coin(n):
if n==1 :
return 1
if n==2:
return 2
return coin(n-1)+coin(n-2)
print("最少%s"%(coin(10))+"次可以拿完硬币")
如果两个素数之差为2,这样的两个素数就叫作"孪生数",找出100以内的所有"孪生数".
#如果两个素数之差为2,这样的两个素数就叫作"孪生数",找出100以内的所有"孪生数"
num = []
for i in range(2, 101):
flag = True
for j in range(2, i):
if i % j == 0:
flag = False
break
if flag:
num.append(i)
index = 0
print(num)
while index < len(num) - 1:
first = num[index]
second = num[index + 1]
if second - first == 2:
print(f"{first}和{second}之间是孪生素数")
index += 1
给定一个列表,求最大值(不能使用系统api),求最小值,求平均值、求和
list = [1,2,3,4,5,6,7,8]
print("列表",list)
num_max = list[0]
num_min = list[0]
num_and = 0
for i in range(1,len(list)):
if num_max < list[i]:
num_max = list[i]
elif num_min > list[i]:
num_min = list[i]
else:
pass
print("最大值:",num_max)
print("最小值:",num_min)
for i in list:
num_and += i
print("和:",num_and)
num_average = num_and/len(list)
print("平均值:",num_average)
将list中的重复数据去重,至少使用两种方案
#1.将列表转换成为集合再转换成为列表
a = [1,2,3,1,2,8,9,5]
print("去重前:",a)
b = list(set(a))
print("去重后:",b)
#2.利用循环进行去重
j = []
for i in a:
if i not in j:
j.append(i)
print("去重后:",j)
如何将0-10随机存入列表中
#如何将0-10随机存入列表中
import random
ls = []
for i in range(10):
ls.append(random.randint(0, 10))
print(ls)