- 内容提要
- 作者简介
- 技术评审者简介
- 致谢
- 译者序 会编程的人不一样
- 前言
- 本书的读者对象
- 编码规范
- 什么是编程
- 本书简介
- 下载和安装 Python
- 启动 IDLE
- 如何寻求帮助
- 聪明地提出编程问题
- 小结
- 第一部分 Python 编程基础
- 第1章 Python 基础
- 第2章 控制流
- 第3章 函数
- 第4章 列表
- 第5章 字典和结构化数据
- 第6章 字符串操作
- 第二部分 自动化任务
- 第7章 模式匹配与正则表达式
- 第8章 读写文件
- 第9章 组织文件
- 第10章 调试
- 第11章 从 Web 抓取信息
- 第12章 处理 Excel 电子表格
- 第13章 处理 PDF 和 Word 文档
- 第14章 处理 CSV 文件和 JSON 数据
- 第15章 保持时间、计划任务和启动程序
- 第16章 发送电子邮件和短信
- 第17章 操作图像
- 第18章 用 GUI 自动化控制键盘和鼠标
- 附录A 安装第三方模块
- 附录B 运行程序
- 附录C 习题答案
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
3.8 一个小程序:猜数字
到目前为止,前面展示的小例子适合于介绍基本概念。现在让我们看一看,如何将所学的知识综合起来,编写一个更完整的程序。在本节中,我将展示一个简单的猜数字游戏。在运行这个程序时,输出看起来像这样:
I am thinking of a number between 1 and 20. Take a guess. 10 Your guess is too low. Take a guess. 15 Your guess is too low. Take a guess. 17 Your guess is too high. Take a guess. 16 Good job! You guessed my number in 4 guesses!
在文件编辑器中输入以下代码,并保存为guessTheNumber.py:
# This is a guess the number game. import random secretNumber = random.randint(1, 20) print('I am thinking of a number between 1 and 20.') # Ask the player to guess 6 times. for guessesTaken in range(1, 7): print('Take a guess.') guess = int(input()) if guess < secretNumber: print('Your guess is too low.') elif guess > secretNumber: print('Your guess is too high.') else: break # This condition is the correct guess! if guess == secretNumber: print('Good job! You guessed my number in ' + str(guessesTaken) + ' guesses!') else: print('Nope. The number I was thinking of was ' + str(secretNumber))
让我们逐行来看看代码,从头开始。
# This is a guess the number game. import random secretNumber = random.randint(1, 20)
首先,代码顶部的一行注释解释了这个程序做什么。然后,程序导入了模块random,以便能用random.randint()函数生成一个数字,让用户来猜。返回值是一个1到20之间的随机整数,保存在变量secretNumber中。
print('I am thinking of a number between 1 and 20.') # Ask the player to guess 6 times. for guessesTaken in range(1, 7): print('Take a guess.') guess = int(input())
程序告诉玩家,它有了一个秘密数字,并且给玩家6次猜测机会。在for循环中,代码让玩家输入一次猜测,并检查该猜测。该循环最多迭代6次。循环中发生的第一件事情,是让玩家输入一个猜测数字。因为input()返回一个字符串,所以它的返回值被直接传递给int(),它将字符串转变成整数。这保存在名为guess的变量中。
if guess < secretNumber: print('Your guess is too low.') elif guess > secretNumber: print('Your guess is too high.')
这几行代码检查该猜测是小于还是大于那个秘密数字。不论哪种情况,都在屏幕上打印提示。
else: break # This condition is the correct guess!
如果该猜测既不大于也不小于秘密数字,那么它就一定等于秘密数字,这时你希望程序执行跳出for循环。
if guess == secretNumber: print('Good job! You guessed my number in ' + str(guessesTaken) + ' guesses!') else: print('Nope. The number I was thinking of was ' + str(secretNumber))
在for循环后,前面的if...else语句检查玩家是否正确地猜到了该数字,并将相应的信息打印在屏幕上。不论哪种情况,程序都会打印一个包含整数值的变量(guessesTaken和secretNumber)。因为必须将这些整数值连接成字符串,所以它将这些变量传递给str()函数,该函数返回这些整数值的字符串形式。现在这些字符串可以用+操作符连接起来,最后传递给print()函数调用。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论