写点什么

Python 入门指南之交互式输入行编辑历史回溯

  • 2022 年 7 月 15 日
  • 本文字数:1533 字

    阅读完需:约 5 分钟

13. 接下来?

读过这本指南应该会让你有兴趣使用 Python —— 可能你已经期待着用 Python 解决你的实际问题了。可以在哪里进行一步学习?

入门指南是 Python 文档集的一部分。其中的另一些文档包括:

  • Python 标准库

    应该浏览一下这份文档,它为标准库中的类型、函数和模块提供了完整(尽管很简略)的参考资料。标准的 Python 发布版包括了 大量 的附加模块。其中有针对读取 Unix 邮箱、接收 HTTP 文档、生成随机数、解析命令行选项、写 CGI 程序、压缩数据以及很多其它任务的模块。略读一下库参考会给你很多解决问题的思路。

  • 安装 Python 模块 展示了如何安装其他 Python 用户编写的附加模块。

  • Python 语言参考: 詳細说明了 Python 语法和语义。

    它读起来很累,不过对于语言本身,有份完整的手册很有用。

其它 Python 资源:

  • http://www.python.org: Python 官方网站。它包含代码、文档和 Web 上与 Python 有关的页面链接该网站镜像于全世界的几处其它问题,类似欧洲、日本和澳大利亚。

    镜像可能会比主站快,这取决于你的地理位置。

  • http://docs.python.org: 快速访问 Python 的文档。

  • http://pypi.python.org: Python 包索引,以前昵称为奶酪店,索引了可供下载的,用户创建的 Python 模块。如果你发布了代码,可以注册到这里,这样别人可以找到它。

  • http://code.activestate.com/recipes/langs/python/: Python 食谱是大量的示例代码、大型的集合,和有用的脚本。

    值得关注的是这次资源已经结集成书,名为《Python 食谱》(O’Reilly & Associates, ISBN 0-596-00797-3。)

  • http://scipy.org: The Scientific Python 项目包括数组快速计算和处理模块,和大量线性代数、傅里叶变换、非线性 solvers、随机数分布,统计分析以及类似的包。

与 Python 有关的问题,以及问题报告,可以发到新闻组 comp.lang.python ,或者发送到邮件组 python-list@python.org 。新闻组和邮件组是开放的,所以发送的消息可以自动的跟到另一个之后。每天有超过 120 个投递(高峰时有数百),提问(以及回答)问题,为新功能提建议,发布新模块。在发信之前,请查阅 常见问题 (亦称 FAQ),或者在 Python 源码发布包的 Misc/ 目录中查阅。邮件组也可以在 http://mail.python.org/pipermail/ 访问。FAQ 回答了很多被反复提到的问题,很可能已经解答了你的问题。


14. 交互式输入行编辑历史回溯

某些版本的 Python 解释器支持编辑当前的输入行和历史记录,类似于在 Korn shell 和 GNU Bash shell 中看到的功能。这是使用 GNU Readline 库实现的,它支持各种编辑风格。 这个库有它自己的文档,在这里我们不就重复了。

14.1. Tab 补全和历史记录

变量和模块名的补全在解释器启动时 自动打开 以便 Tab 键调用补全功能;它会查看 Python 语句的名字,当前局部变量以及可以访问的模块名。对于点分表达式如 string.a,它将求出表达式最后一个 '.' 之前的值,然后根据结果的属性给出补全的建议。注意,如果一个具有 __getattr__() 方法的对象是表达式的某部分,这可能执行应用程序定义的代码。默认的配置同时会把历史记录保存在你的用户目录下一个名为 .python_history 的文件中。在下次与交互式解释器的回话中,历史记录将还可以访问。

14.2. 其它交互式解释器

与早期版本的解释器相比,现在是向前巨大的进步;然而,有些愿望还是没有实现:如果能对连续的行给出正确的建议就更好了(解析器知道下一行是否需要缩进)。补全机制可以使用解释器的符号表。检查(或者只是建议)匹配的括号、 引号的命令等也会非常有用。

一个增强的交互式解释器是 IPython,它已经存在相当一段时间,具有 tab 补全、 对象 exploration 和高级的历史记录功能。它也可以彻底定制并嵌入到其他应用程序中。另一个类似的增强的交互式环境是 bpython

发布于: 刚刚阅读数: 3
用户头像

公众号:海拥 2021.11.29 加入

【个人网站】haiyong.site 【联系方式】微信:wh18363 【软件技能】前端,Java,Python 【个人称号】InfoQ 写作社区签约作者,华为云享专家,CSDN原力作者,全栈领域优质创作者,掘金2021年度人气作者No.21

评论

发布
暂无评论
Python 入门指南之交互式输入行编辑历史回溯_Python_海拥(haiyong.site)_InfoQ写作社区