- 内容提要
- 作者简介
- 技术评审者简介
- 致谢
- 译者序 会编程的人不一样
- 前言
- 本书的读者对象
- 编码规范
- 什么是编程
- 本书简介
- 下载和安装 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 习题答案
4.5 例子程序:神奇8球和列表
前一章我们写过神奇8球程序。利用列表,可以写出更优雅的版本。不是用一些几乎一样的elif语句,而是创建一个列表,针对它编码。打开一个新的文件编辑器窗口,输入以下代码,并保存为magic8Ball2.py:
import random messages = ['It is certain', 'It is decidedly so', 'Yes definitely', 'Reply hazy try again', 'Ask again later', 'Concentrate and ask again', 'My reply is no', 'Outlook not so good', 'Very doubtful'] print(messages[random.randint(0, len(messages) - 1)])
Python中缩进规则的例外
在大多数情况下,代码行的缩进告诉Python它属于哪一个代码块。但是,这个规则有几个例外。例如在源代码文件中,列表实际上可以跨越几行。这些行的缩进并不重要。Python知道,没有看到结束方括号,列表就没有结束。例如,代码可以看起来像这样:
spam = ['apples', 'oranges', 'bananas', 'cats'] print(spam)
当然,从实践的角度来说,大部分人会利用Python的行为,让他们的列表看起来漂亮且可读,就像神奇8球程序中的消息列表一样。
也可以在行末使用续行字符\,将一条指令写成多行。可以把\看成是“这条指令在下一行继续”。\续行字符之后的一行中,缩进并不重要。例如,下面是有效的Python代码:
print('Four score and seven ' + \ 'years ago...')
如果希望将一长行的Python代码安排得更为可读,这些技巧是有用的。
运行这个程序,你会看到它与前面的magic8Ball.py程序效果一样。
请注意用作messages下标的表达式:random.randint(0, len(messages) - 1)。这产生了一个随机数作为下标,不论messages的大小是多少。也就是说,你会得到0与len(messages) - 1之间的一个随机数。这种方法的好处在于,很容易向列表添加或删除字符串,而不必改变其他行的代码。如果稍后更新代码,就可以少改几行代码,引入缺陷的可能性也更小。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论