python第一次周末大作业
#############################作业#############################
1. 三次登录验证
完成用户登录验证
要求:
1. 系统自动生成4位随机数. 作为登录验证码. 直接用就好. 这里不用
纠结
from random import randint
num = 0
verify_code = ""
while num < 4:
verify_code += chr(randint(65, 90))
num += 1
print(verify_code) # 四位随机验证码
2. 用户输入用户名和密码还有验证码.
3. 用户可以有三次登录的机会. 但是验证码如果输入错误. 不计算在
内
from random import randint
count = 1
while count <= 3:
num = 0
verify_code = ""
while num < 4:
verify_code += chr(randint(65, 90))
num += 1
# print(verify_code) # 用户登录
username = "alex"
password = "" # 用户输入
uname = input("请输入你的用户名:" )
upwd = input("请输入你的密码:")
vi_code = input(f"请输入你的验证码{verify_code}:") # 判断验证码
if vi_code.upper() == verify_code.upper():
print("验证码正确")
# 判断用户名和密码
if uname == username and upwd == password:
print("登录成功")
break
else:
print("登录失败(还剩下%s次机会)" % (3-count))
count += 1 # ???? 000 000 - 999 999
else:
print("验证码错误")
2.# 商品信息:
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
# 用户信息:
user = {"username":"alex", "password": "123456"}
# 功能要求:
# 1、启动程序后,输入用户名密码后,让用户输入工资,然后打印商品列表
# 2、用户根据商品编号购买商品
# 3、用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒
# 4、退出时,打印已购买商品和余额
# 准备一个购物车
# 购物车:[{id:编号, name:名称, price:商品价格, totle:数量}]
# [{id:0, name:"电脑", price:1999, totle:7},
# {id:3, name:"美女", price:998, totle:2}]
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
# 用户信息:
user = {"username":"alex", "password": ""}
shoppingcart = []
while 1:
uname = input("请输入你的用户名:")
upwd = input("请输入你的密码:")
if uname == user['username'] and upwd == user['password']:
print("登录成功!")
money = int(input("请输入你兜里钱:")) while 1:
for i in range(len(goods)):
print(i+1, goods[i]['name'], goods[i]['price'])
# 1 键盘 100 0
# 2 鼠标 200 1
# 3 美女 1000 2
#
num = int(input("请输入你要购买的商品编号:")) # 我没判断是否是数字
# 还原回索引
index = num - 1
# 获取到购买的商品
good = goods[index]
# 判断是否可以购买该商品
if money >= good['price']:
# 判断是否已经购买过该商品, 如果购买过. 数量+1 没买过 加到购物车里
for el in shoppingcart: # el:你已经够买过的商品
if el['id'] == index: # 买过
el['totle'] += 1 # 数量+1
break # 继续显示商品列表
else: # 没买过
shoppingcart.append({"id": index, "name": good['name'], "price": good['price'], "totle": 1})
money -= good['price'] # 扣钱
print("购买成功!!, 您的余额是%s" % money)
else:
print("对不起. 您的余额已不足!, 您的余额还剩%s" % money) # 可以充值也可以不充值 # 是否继续购物
isContinue = input("请问是否继续购买商品(Y/N)")
if isContinue.upper() == "N":
# 不买了
# 打印购买的商品和余额
for g in shoppingcart:
print(g['name'], g['price'], g['totle'])
print("你还剩下%s" % money)
# 程序退出
exit() # 程序退出
else:
print("登录失败!")
3 质数, 只能被1和自身整除的数, 我们就从2开始除. 除到n-1结束
num = int(input('请输入一个数字:'))
if num <= 1:
print('这不是质数')
elif num == 2:
print('这是一个质数!')
else:
i=2
while i < num:
if num%i == 0:
print('这不是一个质数')
break
i += 1
else:
print ('这是一个质数!')
n=int(input('请输入一个数字:'))
for i in range(2,n):
if n %i ==0:
print('不是质数')
break #有了break就不会执行后面的else
else:
print('是一个质数')
4.输入数字个数,判断这个数字是几位数(用算法实现)
num=int(input('请输入一个数:'))
i=0
while num >=1:
num=num/10
i+=1
print(f'这个数是{i}位数')
python第一次周末大作业的更多相关文章
- python第三次周末大作业
''' s18第三周周末⼤作业 模拟博客园系统: 1. 启动程序, 显⽰菜单列表 菜单: 1. 登录 2. 注册 3. ⽂章 4. ⽇记 5. 退出 2. ⽤户输入选项, ⽂章和⽇记必须在登录后才可以 ...
- python第四次周末大作业
''' 选课系统开发 系统登录需要有两类用户:学生.管理员,针对不用用户提供不同功能: 学生用户 :对于学生用户来说,登陆之后有三个功能 1.查看所有课程 2.选择课程 3.查看所选课程 4.删除已选 ...
- python第二次周末大作业
题目 ''' HR人力资源管理. 1. 菜单: ("查看员⼯信息","添加员⼯信息", "修改员⼯信息", "删除员⼯信息&quo ...
- 数据库大作业--由python+flask
这个是项目一来是数据库大作业,另一方面也算是再对falsk和python熟悉下,好久不用会忘很快. 界面相比上一个项目好看很多,不过因为时间紧加上只有我一个人写,所以有很多地方逻辑写的比较繁琐,如果是 ...
- 爬虫综合大作业——网易云音乐爬虫 & 数据可视化分析
作业要求来自于https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3075 爬虫综合大作业 选择一个热点或者你感兴趣的主题. 选择爬取的对象 ...
- Hadoop综合大作业
Hadoop综合大作业 要求: 用Hive对爬虫大作业产生的文本文件(或者英文词频统计下载的英文长篇小说)词频统计. 用Hive对爬虫大作业产生的csv文件进行数据分析 1. 用Hive对爬虫大作业产 ...
- OO第一次博客作业
OO第一次博客作业 一.三次作业的bug反省 1.自己发现别人的问题 (1)输入处理的问题,比如第一次作业,主要就是处理输入的字符串,然后有同学的正则表达式有问题,则对于一些错误输入就不能正确判断. ...
- CSAPP HITICS 大作业 hello's P2P by zsz
摘 要 摘要是论文内容的高度概括,应具有独立性和自含性,即不阅读论文的全文,就能获得必要的信息.摘要应包括本论文的目的.主要内容.方法.成果及其理论与实际意义.摘要中不宜使用公式.结构式.图表和非公知 ...
- oo 第一次博客作业
oo 第一次博客作业 早在大一就听说了oo的各种传奇故事,大二下学期终于也开始了我的oo之旅. 基于度量来分析自己的程序结构 第一次作业 类图分析 耦合度分析 可以看出在第一次作业中,我的耦合度非常高 ...
随机推荐
- Asteroids POJ - 3041 匈牙利算法+最小点覆盖König定理
题意: 给出一个N*N的地图N 地图里面有K个障碍 你每次可以选择一条直线 消除这条直线上的所有障碍 (直线只能和列和行平行) 问最少要消除几次 题解: 如果(x,y)上有一个障碍 则把 ...
- 【XSY2767】朋友 广义后缀自动机 网络流
题目描述 懒得写了...直接贴题面 $\sum n\leq5000,1\leq S_{i,j}\leq k\leq 1000 $ 题解 先建出广义sam. 可以发现朋友的出现位置的定义符合后缀自动机的 ...
- VIM 光标移动常用命令
h或^h 向左移一个字符 k或^p 向上移一行 j或^j或^n 向下移一行 l或空格 向右移一个字符 G 移到文件的最后一行 nG 移到文件的第n行 w 移到下一个字的开头 W 移到下一个字 ...
- 【hdu 6172】Array Challenge(数列、找规律)
多校10 1002 HDU 6172 Array Challenge 题意 There's an array that is generated by following rule. \(h_0=2, ...
- python学习日记(基础数据类型及其方法01)
数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...
- Codeforces Round #449 (Div. 1) Willem, Chtholly and Seniorious (ODT维护)
题意 给你一个长为 \(n\) 的序列 \(a_i\) 需要支持四个操作. \(1~l~r~x:\) 把 \(i \in [l, r]\) 的 \(a_i\) 加 \(x\) . \(2~l~r~x: ...
- luogu P4299 首都
题目描述 在X星球上有N个国家,每个国家占据着X星球的一座城市.由于国家之间是敌对关系,所以不同国家的两个城市是不会有公路相连的. X星球上战乱频发,如果A国打败了B国,那么B国将永远从这个星球消失, ...
- 解决使用jedis连接是报DENIED Redis is running in protected mode错误
DENIED Redis is running in protected mode because protected mode is enabled, no bind address was spe ...
- Nginx环境的搭建
源码安装 不同发行版使用的安装程序都不同,所以官方提供了源代码,我们需要将原代码编译后再安装. 源程序使用C语言开发,所以需要安装C语言的编译环境. 安装Nginx环境和第三方支持库 yum inst ...
- Spring Boot实战
Spring在java EE开发中是实际意义上的标准,但我们在开发Spring的时候可能会遇到以下令人头疼的问题: 1.大量配置文件的定义.2.与第三方软件整合的技术问题. Spring每个版本的退出 ...