像这样尝试,使用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)相关推荐

  1. python语言基本语句-python基本语句

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. python 基本语句首先申明下,本文为笔者学习<python学习 ...

  2. Python Web 深度学习实用指南:第一、二部分

    原文:Hands-On Python Deep Learning for the Web 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自[ApacheCN 深度学习 译文集],采用译后编辑 ...

  3. python深度神经网络量化_基于Python建立深度神经网络!你学会了嘛?

    原标题:基于Python建立深度神经网络!你学会了嘛? 图1 神经网络构造的例子(符号说明:上标[l]表示与第l层:上标(i)表示第i个例子:下标i表示矢量第i项) 单层神经网络 图2 单层神经网络示 ...

  4. 用Python实现深度学习框架

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 开课吧教育 作者:高民权,前IBM中国数据科学家 深度学习作为人工智能的核心技术,近年来无论是学 ...

  5. 如何用 OpenCV、Python 和深度学习实现面部识别?

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达本文转自|新机器视觉 Face ID 的兴起带动了一波面部识别技术热 ...

  6. Keras快速上手:基于Python的深度学习

    Keras快速上手:基于Python的深度学习 谢梁,鲁颖,劳虹岚 著 ISBN:9787121318726 包装:平装 开本:16开 正文语种:中文 出版社: 电子工业出版社 出版时间:2017-0 ...

  7. 从Theano到Lasagne:基于Python的深度学习的框架和库

    从Theano到Lasagne:基于Python的深度学习的框架和库 [日期:2015-08-03] 来源:http://creative-punch.net/  作者:Creative Punch ...

  8. DL框架之Keras:深度学习框架Keras框架的简介、安装(Python库)、相关概念、Keras模型使用、使用方法之详细攻略

    DL框架之Keras:深度学习框架Keras框架的简介.安装(Python库).相关概念.Keras模型使用.使用方法之详细攻略 目录 Keras的简介 1.Keras的特点 2.Keras四大特性 ...

  9. Intel Realsense D435 python 从深度相机realsense生成pcl点云

    引用文章:python 从深度相机realsense生成pcl点云 从深度相机realsense生成pcl点云 一.通过realsense取得深度信息和彩色信息 二.获取坐标和色彩信息 三.通过pcl ...

  10. 附pdf下载 | 入门Python和深度学习的经典书

    当下Python和深度学习为代表的人工智能AI技术非常火热,正深刻影响着人类社会的方方面面.今天分享推荐三本入门Python和深度学习的电子书: python电子书教程 PyTorch电子书教程 神经 ...

最新文章

  1. 处理机调度实验总结_计算机系统结构总结
  2. java date的使用_java:Date类的概述和方法使用
  3. C# 读取TXT文本数据 添加到数据库
  4. 如何用免费GPU学习AI算法?这篇算法资源大集锦别错过
  5. pandas loc和iloc区别
  6. Python sys模块的使用
  7. 利用计算机打字教学设计,第6课 争当打字小能手教学设计
  8. 集合 小数据池 深浅拷贝
  9. C++面向对象高级编程(上) 第三周笔记 GeekBand
  10. 6.1. 概率密度估计
  11. deepin linux 安装packet tracer 7.0
  12. 转载:Futurice-Android 开发最佳实践
  13. 英文分词的算法和原理
  14. Linux系统常用测试工具
  15. fastJson注解@JSONField指定字段的顺序
  16. 《Intel汇编语言程序设计》环境搭建
  17. 前端开发中spa的优缺点_使用单Spa开发和部署微前端
  18. 送戒指创意 让婚礼不再单调
  19. 如何给物体添加阴影效果
  20. 计算机里被删除的文件可以在哪里进行恢复,电脑里的文件夹不小心删除了找回来的方法...

热门文章

  1. 声明式事务和编程式事务
  2. Install GIT in Ubuntu
  3. 物流公司借接入平台实现异地仓库信息实时掌握
  4. 对讲业务对讲过程中的几个状态
  5. 职场升职加薪不二法则,德到领袖偷偷告诉你
  6. java HashMap和LinkedHashMap区别
  7. Eclipse 运行程序
  8. 30分钟LINQ教程【转】
  9. CSS------给字体添加边框时,边框大小无法改变问题
  10. Android adt 初步理解和分析(三)