python避免深度嵌套的if-else_避免嵌套If语句?(Python 2.7)
像这样尝试,使用continue退出循环的当前迭代,并在循环的顶部重新开始。在
你还有一个逻辑错误:if guess <= 1 and guess >= 20 and guess not in already_guessed:
一个数字不能同时小于或等于1,也不能大于或等于20。您的and应该是这样的or:
^{pr2}$
或者更简单:if 1 <= guess <= 20 and guess not in already_guessed:
另外,将你的try/except只放在可能引发异常的情况下(或者在发生异常时不应该发生:from random import randint
import sys
name = raw_input("Hello! What's your name? ")
print "Well {}, I'm thinking of a number between 1 and 20.".format(name)
print "Since I'm a benevolent computer program, I'll give you 6 guesses."
secret_number = randint(1, 20)
guesses_left = 6
already_guessed = []
while guesses_left > 0:
print "You have {} guesses left!".format(guesses_left)
try:
guess = int(raw_input("Take a guess: "))
except ValueError:
print "Invalid input! Please try again!\n"
continue
# If the number is not between 1 and 20...
if not (1 <= guess <= 20):
print "Not a number between 1 - 20!"
print "Please try again!\n"
continue
if guess in already_guessed:
print "You already guessed that!\n"
continue
guesses_left -= 1
already_guessed.append(guess)
if guess == secret_number:
print "You win! {} was my secret number!".format(secret_number)
sys.exit(0)
elif guess < secret_number:
print "Your guess is too low!\n"
elif guess > secret_number:
print "Your guess is too high!\n"
下面是一个运行示例:Hello! What's your name? :)
Well :), I'm thinking of a number between 1 and 20.
Since I'm a benevolent computer program, I'll give you 6 guesses.
You have 6 guesses left!
Take a guess: 2
Your guess is too low!
You have 5 guesses left!
Take a guess: 2
You already guessed that!
You have 5 guesses left!
Take a guess: 3
Your guess is too low!
You have 4 guesses left!
Take a guess: 7
Your guess is too high!
You have 3 guesses left!
Take a guess: 5
Your guess is too high!
You have 2 guesses left!
Take a guess: 4
You win! 4 was my secret number!
python避免深度嵌套的if-else_避免嵌套If语句?(Python 2.7)相关推荐
- python语言基本语句-python基本语句
广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. python 基本语句首先申明下,本文为笔者学习<python学习 ...
- Python Web 深度学习实用指南:第一、二部分
原文:Hands-On Python Deep Learning for the Web 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自[ApacheCN 深度学习 译文集],采用译后编辑 ...
- python深度神经网络量化_基于Python建立深度神经网络!你学会了嘛?
原标题:基于Python建立深度神经网络!你学会了嘛? 图1 神经网络构造的例子(符号说明:上标[l]表示与第l层:上标(i)表示第i个例子:下标i表示矢量第i项) 单层神经网络 图2 单层神经网络示 ...
- 用Python实现深度学习框架
↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 开课吧教育 作者:高民权,前IBM中国数据科学家 深度学习作为人工智能的核心技术,近年来无论是学 ...
- 如何用 OpenCV、Python 和深度学习实现面部识别?
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达本文转自|新机器视觉 Face ID 的兴起带动了一波面部识别技术热 ...
- Keras快速上手:基于Python的深度学习
Keras快速上手:基于Python的深度学习 谢梁,鲁颖,劳虹岚 著 ISBN:9787121318726 包装:平装 开本:16开 正文语种:中文 出版社: 电子工业出版社 出版时间:2017-0 ...
- 从Theano到Lasagne:基于Python的深度学习的框架和库
从Theano到Lasagne:基于Python的深度学习的框架和库 [日期:2015-08-03] 来源:http://creative-punch.net/ 作者:Creative Punch ...
- DL框架之Keras:深度学习框架Keras框架的简介、安装(Python库)、相关概念、Keras模型使用、使用方法之详细攻略
DL框架之Keras:深度学习框架Keras框架的简介.安装(Python库).相关概念.Keras模型使用.使用方法之详细攻略 目录 Keras的简介 1.Keras的特点 2.Keras四大特性 ...
- Intel Realsense D435 python 从深度相机realsense生成pcl点云
引用文章:python 从深度相机realsense生成pcl点云 从深度相机realsense生成pcl点云 一.通过realsense取得深度信息和彩色信息 二.获取坐标和色彩信息 三.通过pcl ...
- 附pdf下载 | 入门Python和深度学习的经典书
当下Python和深度学习为代表的人工智能AI技术非常火热,正深刻影响着人类社会的方方面面.今天分享推荐三本入门Python和深度学习的电子书: python电子书教程 PyTorch电子书教程 神经 ...
最新文章
- 无脑博士的试管们java_计蒜客 无脑博士和他的试管们
- 日志、下载、投影、连接查询
- makefile 基础用法
- 机器学习实践:TensorFlow最后一个epoch训练损失函数显著增大
- 数据结构与算法之时间复杂度详解
- mysql update field_mysql-更新表与另一个选择,但字段是SUM(someField)
- 三个箭头循环标志_城市标志系统的概念和类别
- webgis之相关工具
- utuntu 12.04 安装 配置 JAVA JDK
- 找出不大于n的最大质数
- 中医教你按摩手指,治疗百病
- Android系统 —— 各版本代号和对应API等级一览
- 【原创纯手打】VUE项目写小米商城官网(附源码)
- 编译原理 | 由正规文法构造状态转换图
- rabit的安装与使用
- PHP获取客户端真实IP的方法
- java开发工具IntelliJ IDEA全新版本V2022.2更新详情(二)
- 永中软件承接“核高基”专项
- 输入nvidia-smi不能查看显卡NVIDIA型号的解决办法及快速查看电脑显卡NVIDIA型号信息
- 一键下载75款常用的jquery特效前端网页代码
热门文章
- 使用CSS sprites减少HTTP请求
- 如何编写 Nagios 插件
- Touchpad Synaptics 触摸板(中文) [zt]
- 小波变换和motion信号处理(三)(转)
- LOJ#6048. 「雅礼集训 2017 Day10」数列(线段树)
- 后台管理中心跳转问题解决
- [译] 2018 年七个通过脑电图分析实现“读心术”的 Javascript 库
- MySQL • 源码分析 • 内存分配机制
- 简单高效 测试MDaemon10.12的过程
- 怎么用MathType添加函数识别