作业:
有一堆硬币,每次只能拿一个或者两个,求最少多少次可以拿完硬币
[10, 8, 5, 3, 27, 99]
a = [10,8,5,3,27,99]
sum = 0
for i in a:
sum +=1
print(sum/2)
如果两个素数之差为2,这样的两个素数就叫作"孪生数",找出100以内的所有"孪生数".
a = []
for i in range(2,100):
for j in range(2 , i):
if i % j == 0:
break
else:
a.append(i)
print(a)
for l in range(2,len(a)):
if a[l] - a[l-1] == 2:
print(a[l],a[l+1])
给定一个列表,求最大值(不能使用系统api),求最小值,求平均值、求和
a = [1,2,3,4,5,6,7,8,9]
max = 0
min = 0
anverge = 0
sum = 0
i = 0
max = a[i]
min = a[i]
for i in range(2,len(a)):
if max < a[i]:
max = a[i]
if min > a[i]:
min = a[i]
print(max,min)
count = 0
for j in a:
count += 1
sum += j
print(sum)
anverge = sum / count
print(anverge)
将list中的重复数据去重,至少使用两种方案
a = [1,2,3,4,5,6,6]
for i in range(1 , len(a)):
if a[i] == a[i-1]:
a.remove(a[i])
print(a)
a = [1,2,3,4,5,6,6]
l1 = set(a)
print(list(l1))
两个列表进行合并操作
a = [1,2,3,4,5,6]
b = [7,8,9,10]
a.extend(b)
print(a)
使用列表判断一个列表是否在另外一个列表中
a = [1,2,3,4,5,6]
b = [1,2,3,]
if set(a).intersection(set(b)) == set(b):
print("b列表存在a列表里")
列表的反转 列表的排序
a = [1,2,3,4,5,6]
a.reverse()
print(a)
如何将0-10随机存入列表中
import random
list = []
for i in range(0,11):
i = random.randint(0,10)
list.append(i)
print(list)
存在一个1~n的连续列表,在其中不小心重复了一个值,请找出这个重复值
a = [1,2,3,4,5,6,7,8,9,10,11,99,6]
for i in range(0,len(a)):
for j in range(0,i):
if a[i] == a[j]:
print(a[i])
英雄购买:
import sys
# 列表用来存储所有的用户信息
users = []
def check_name_null(name, password, confirm_password):
if name is None or name == "":
print("用户名称不能为空")
return False
return True
def check_user_info(name):
for u in users:
if name == u.get("username"):
return u
return None
def check_info(password, confirm_password):
if len(password) < 3:
print("对不起,密码长度不能少于3位!!")
return False
if password != confirm_password:
print("对不起,两次密码不一致!!")
return False
return True
def reg():
while True:
name = input("请输入用户名称:")
password = input("请输入用户密码:")
confirm_password = input("请再次确认用户密码:")
# 校验用户信息
if check_name_null(name, password, confirm_password) and check_info(password, confirm_password):
if check_user_info(name) is None:
user = {"username": name, "password": password}
users.append(user)
print("注册成功")
break
else:
print("对不起,该用户已存在,请重新注册!!")
else:
print("注册失败!!")
def check_user_login(name, password):
user = check_user_info(name)
if user is None:
print("用户不存在!!!")
return False
else:
ps = user.get("password")
if ps == password:
print("登录成功")
return True
else:
print("密码错误")
return False
def login():
while True:
name = input("请输入用户名称:")
password = input("请输入用户密码:")
# 校验用户信息
if check_user_login(name, password):
return True
else:
return False
def xygm():
while True:
choice = input("(温馨提示)请输入您要购买的英雄编号:")
num = int(input("(温馨提示)请输入您要购买的英雄数量:"))
# price = 0
# name = ""
# nickname = ""
# moto = ""
# last_num = 0
if choice == "1":
price = 3500 * num
name = "纳尔"
nickname = "迷失之牙"
moto = "丛林不会原谅盲目与无知"
last_num = 100 - num
print("\n英雄详情\n购买页面\n")
print("\t英雄商城购买英雄\n")
print("英雄购买票据\n")
print("~ * "*18)
print("\n\t英雄名称:"+ name +"(史诗)\n")
print(f"\n\t英雄昵称:{nickname}(史诗)\n")
print("\t英雄属性:生命值428(+85)/能量200(+0)?移动速度425/攻击力55.8(+3.2)\n")
print("\t英雄座右铭:", moto ,"\n")
print("\t英雄价格:%s\n" %price)
print("\t活动折扣:9.5\n")
print("\t库存量:{}".format(last_num))
print("插播广告:当风云变色,当流离失所,世界不再是旧日模样\n你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡\n")
print("~ * "*18)
print("(温馨提示)请付款\n")
return True
elif choice == "2":
price = 400 * num
name = "锐雯"
nickname = "迷失之牙"
moto = "她是残忍高效的战士"
last_num = 100 - num
print("\n英雄详情\n购买页面\n")
print("\t英雄商城购买英雄\n")
print("英雄购买票据\n")
print("~ * "*18)
print("\n\t英雄名称:"+ name +"(史诗)\n")
print(f"\n\t英雄昵称:{nickname}(史诗)\n")
print("\t英雄属性:生命值428(+85)/能量200(+0)?移动速度425/攻击力55.8(+3.2)\n")
print("\t英雄座右铭:", moto ,"\n")
print("\t英雄价格:%s\n" %price)
print("\t活动折扣:9.5\n")
print("\t库存量:{}".format(last_num))
print("插播广告:当风云变色,当流离失所,世界不再是旧日模样\n你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡\n")
print("~ * "*18)
print("(温馨提示)请付款\n")
return True , name ,nickname , moto , last_num
elif choice == "3":
price = 3500 * num
name = "薇恩"
nickname = "暗夜猎手"
moto = "这个世界不想人们想象的那么美好"
last_num = 100 - num
print("\n英雄详情\n购买页面\n")
print("\t英雄商城购买英雄\n")
print("英雄购买票据\n")
print("~ * "*18)
print("\n\t英雄名称:"+ name +"(史诗)\n")
print(f"\n\t英雄昵称:{nickname}(史诗)\n")
print("\t英雄属性:生命值428(+85)/能量200(+0)?移动速度425/攻击力55.8(+3.2)\n")
print("\t英雄座右铭:", moto ,"\n")
print("\t英雄价格:%s\n" %price)
print("\t活动折扣:9.5\n")
print("\t库存量:{}".format(last_num))
print("插播广告:当风云变色,当流离失所,世界不再是旧日模样\n你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡\n")
print("~ * "*18)
print("(温馨提示)请付款\n")
return True , name ,nickname , moto , last_num
elif choice == "4":
price = 3000 * num
name = "扎克"
nickname = "生化魔人"
moto = "即使你没有脊柱,你也必须站起来"
last_num = 100 - num
print("\n英雄详情\n购买页面\n")
print("\t英雄商城购买英雄\n")
print("英雄购买票据\n")
print("~ * "*18)
print("\n\t英雄名称:"+ name +"(史诗)\n")
print(f"\n\t英雄昵称:{nickname}(史诗)\n")
print("\t英雄属性:生命值428(+85)/能量200(+0)?移动速度425/攻击力55.8(+3.2)\n")
print("\t英雄座右铭:", moto ,"\n")
print("\t英雄价格:%s\n" %price)
print("\t活动折扣:9.5\n")
print("\t库存量:{}".format(last_num))
print("插播广告:当风云变色,当流离失所,世界不再是旧日模样\n你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡\n")
print("~ * "*18)
print("(温馨提示)请付款\n")
return True , name ,nickname , moto , last_num
elif choice == "5":
price = 2500 * num
name = "杰斯"
nickname = "未来守护者"
moto = "武装着睿智和魅力,你的选择没有错"
last_num = 100 - num
print("\n英雄详情\n购买页面\n")
print("\t英雄商城购买英雄\n")
print("英雄购买票据\n")
print("~ * "*18)
print("\n\t英雄名称:"+ name +"(史诗)\n")
print(f"\n\t英雄昵称:{nickname}(史诗)\n")
print("\t英雄属性:生命值428(+85)/能量200(+0)?移动速度425/攻击力55.8(+3.2)\n")
print("\t英雄座右铭:", moto ,"\n")
print("\t英雄价格:%s\n" %price)
print("\t活动折扣:9.5\n")
print("\t库存量:{}".format(last_num))
print("插播广告:当风云变色,当流离失所,世界不再是旧日模样\n你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡\n")
print("~ * "*18)
print("(温馨提示)请付款\n")
return True , name ,nickname , moto , last_num
elif choice > 6:
print("您输入的有误,请重新输入")
return False
while True:
print("~ * "* 20)
print("\t\t 1、用户注册")
print("\t\t 2、用户登录")
print("\t\t 3、退出系统")
choice = input("请输入您的选择:")
if choice == "1":
reg()
elif choice == "2":
if login():
print("\n\t英雄商城英雄列表\n")
print("\t英雄联盟商城英雄列表\n")
print("~ * "*13)
print("\n\t编号 姓名 昵称 价格 库存 描述\n")
print("\t1 纳尔 迷失之牙 3500 100 丛林不会原谅盲目与无知\n")
print("\t2 锐雯 放逐之刃 400 100 她是残忍高效的战士\n")
print("\t3 薇恩 暗夜猎手 3500 100 这个世界不想人们想象的那么美好\n")
print("\t4 扎克 生化魔人 3000 100 即使你没有脊柱,你也必须站起来\n")
print("\t5 杰斯 未来守护者 2500 100 武装着睿智和魅力,你的选择没有错\n")
print("~ * "*13)
if xygm():
print("购买完成")
elif choice == "3":
# 退出系统
sys.exit()
elif choice > 4:
print("您输入的有误,请重新输入")