2018.12.1

周末练习:

1.用户三次登陆

from random import randint
i = 1
while i < 4:
num = 0
verify_code = ''
while num < 4:
verify_code = verify_code + chr(randint(65, 90)) #将随机生成的4个字符连接起来
num += 1
print(verify_code)
username = input('请输入用户名:').strip()
password = input('请输入密码:').strip()
v_code = input('请输入验证码').upper()
if username == 'alex' and password == '':
if v_code == verify_code:
print('登陆成功')
break
else:
print('验证码输入错误,请重新输入')
else:
# print('账号或密码输入有误!,还有%s次机会请重新输入' % (3-i))
if username == 'alex' and password != '':
print('密码错误,还有%s次机会请重新输入' % (3-i))
else:
print('没有此账号,还有%s次机会请重新输入' % (3-i))
i += 1

2.购物车:

goods = [{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "飞机", "price": 998}, ]
#用户信息
xinxi = {'uname':'alex', 'psd':'123'}
while 1:
username = input('请输入用户名:').strip()
password = input('请输入密码:').strip()
shopping = {}
if username == xinxi['uname'] and password == xinxi['psd']:
money = int(input('请输入工资'))
yu_e = 0
i = 0
while 1:
while i < len(goods):
print('''
商品编号 商品名 价格
%s %s %s''' % ((i + 1), goods[i]['name'], goods[i]['price']))
i += 1
buy_bianhao = input('请输入要购买的商品编号(按q退出):').strip()
if buy_bianhao.upper() == 'Q':
if len(shopping) > 0:
print('购买的商品:')
for k, v in shopping.items():#遍历shopping中的key和value
print('商品:%s, 价格:%s' % (k, v))
print('余额为:%s' % money)
break
else:
print('没有买东西')
break
else:
index = int(buy_bianhao) - 1
if money - goods[index]['price'] >= 0:
print('成功购买')
money -= goods[index]['price'] #剩余工资
shopping[goods[index]['name']] = goods[index]['price'] #将购买的商品作为key,price作为value,存入字典shopping中
# print('剩余%s:' % money)
# print(shopping)#
else:
print("您的余额不足.")
if buy_bianhao.upper() == 'Q': #判断是否退出
break else:
print('账号或密码不正确,请重新输入')

python小练习:用户三次登陆, 购物车的更多相关文章

  1. python小例子(三)

    1.提高Python运行速度的方法 (1)使用生成器,节约大量内存: (2)循环代码优化,避免过多重复代码的执行: (3)核心模块使用cpython,pypy等: (4)多进程,多线程,协程: (5) ...

  2. 2017-12-15python全栈9期第二天第三节之作业讲解用户三次登陆

    #!/user/bin/python# -*- coding:utf-8 -*-i = 0while i < 3: username = input('请输入账号:') password = i ...

  3. 1_python小程序之实现用户的注册登陆验证功能

    python小程序之实现用户的注册登陆验证功能 程序扼要简述:  一.程序流程:1.程序开始2.判断本地文件/数据库是否已存在用户信息,存在则跳转到登陆,否则跳转到注册,注册成功后后跳转到登陆3.判断 ...

  4. python小练习:使用循环和函数实现一个摇骰子小游戏。游戏规则如下:游戏开始,首先玩家选择Big or Small(押大小),选择完成后开始摇三个骰子,计算总值,11<=总值<=18为“大”,3<=总值<=10为“小”。然后告诉玩家猜对或者是猜错的结果。

    python小练习:使用循环和函数实现一个摇骰子小游戏.游戏规则如下:游戏开始,首先玩家选择Big or Small(押大小),选择完成后开始摇三个骰子,计算总值,11<=总值<=18为“ ...

  5. Python三次登陆

    题目:Python实现三次登陆 不要急于马上把三次登陆写出来,一定要将复杂的程序简单化,必须一步一步地去扩展,这样才保证不会出错. 步骤一:实现简单的一次登陆 # 事先定义 user = 'dark_ ...

  6. 基于gin框架和jwt-go中间件实现小程序用户登陆和token验证

    本文核心内容是利用jwt-go中间件来开发golang webapi用户登陆模块的token下发和验证,小程序登陆功能只是一个切入点,这套逻辑同样适用于其他客户端的登陆处理. 小程序登陆逻辑 小程序的 ...

  7. python入门:用户登录,三次错误机会

    #!/usr/bin/env python # -*- coding:utf-8 -*- #用户登录,三次机会重试 #主要分为两个部分,一部分是写三次循环,一部分写用户输入 #用户登录的实现,循环3次 ...

  8. 使用wepy开发微信小程序商城第三篇:购物车(布局篇)

    使用wepy开发微信小程序商城 第三篇:购物车(布局篇) 前两篇如下: 使用wepy开发微信小程序商城第一篇:项目初始化 使用wepy开发微信小程序商城第二篇:路由配置和页面结构 基于上两篇内容,开始 ...

  9. python学习-实现用户密码登录,输错三次锁定

    作业需求: 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 实现思路: 判断用户是否在黑名单,若在黑名单,则将用户锁定 判断用户是否存在,若不存在,提示用户不存在 若用户存在,判断登录密码是否 ...

随机推荐

  1. Python 基础:分分钟入门

    Python和Pythonic Python是一门计算机语言(这不是废话么),简单易学,上手容易,深入有一定困难.为了逼格,还是给你们堆一些名词吧:动态语言.解释型.网络爬虫.数据处理.机器学习.We ...

  2. Introduction to CELP Coding

    Speex is based on CELP, which stands for Code Excited Linear Prediction. This section attempts to in ...

  3. C语言函数部分

    一.变量的作用域 1.概念:变量起作用的范围. 2.局部变量与全局变量: ①局部变量: 概念:在函数内部或某个控制块的内部定义的变量(理解“局部”) 作用域:函数内部 作用:增强了函数模块的独立性 ② ...

  4. web自动化测试(java)---元素定位

    和python类似,java-selenium也提供了很多种元素定位的方法,具体如下: findElement(By.id()) findElement(By.name()) findElement( ...

  5. 安装Elasticsearch中Head插件并使用

    基础环境 Elasticsearch集群搭建请参考前一篇文章http://www.cnblogs.com/aubin/p/8012840.html 系统 节点名 IP 软件版本 CentOS7.3 e ...

  6. 30 个java编程技巧

    1.return 一个空的集合,而不是 null 如果一个程序返回一个没有任何值的集合,请确保一个空集合返回,而不是空元素.这样你就不用去写一大堆 ”if else” 判断null元素. Java 的 ...

  7. PHP-CPP开发扩展(四)

    PHP-CPP是一个用于开发PHP扩展的C++库.本节讲解如何在C++中调用PHP函数. 调用PHP函数 调用普通函数 // call a function from user space Php:: ...

  8. 使用Dockerfile制作JDK+tomcat镜像

    1.准备好jdk和tomcatapache-tomcat-8.5.32.tar.gzjdk-8u181-linux-x64.tar.gz 注意:a.jdk和tomcat记得从官网下载,否则制作出来的镜 ...

  9. git reset命令使用

    版本回退 当前有三个commit提交版本commit1commit2commit3Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本上一个版本是HEAD^,上上一个版本是HEAD^^ ...

  10. 理解极大似然估计(MLE)

    极大似然估计学习时总会觉得有点不可思议,为什么可以这么做,什么情况才可以用极大似然估计.本文旨在通俗理解MLE(Maximum Likelihood Estimate). 一.极大似然估计的思想与举例 ...