14. 交互�编辑和编辑历�¶
�些版本的 Python 解释器支�编辑当�输入行和编辑历�记录,类似 Korn shell 和 GNU Bash shell 的功能 。这个功能使用了 GNU Readline �实现,一个支�多�编辑方�的库。这个库有它自己的文档,在这里我们就���说明了。
14.1. Tab 补全和编辑历�¶
在解释器å�¯åŠ¨çš„æ—¶å€™å�˜é‡�和模å�—å��补全功能将 自动å�¯ç”¨ 以便在按下 Tab 键时å�‘起调用补全函数;它会查找 Python è¯å�¥å��ç§°ã€�当å‰�局部å�˜é‡�å’Œå�¯ç”¨çš„æ¨¡å�—å��称。 对于带点å�·çš„表达å¼�如 string.a,它会对该表达å¼�最å�Žä¸€ä¸ª '.' 之å‰�的部分求值然å�Žæ ¹æ�®ç»“果对象的属性给出补全建议。 请注æ„�如果具有 __getattr__() 方法的对象是该表达å¼�的一部分这å�¯èƒ½ä¼šæ‰§è¡Œåº”用程åº�定义的代ç �。 默认é…�ç½®è¿˜ä¼šå°†ä½ çš„ç¼–è¾‘åŽ†å�²ä¿�å˜åˆ°ä½ 的用户目录下å��为 .python_history 的文件。 该历å�²åœ¨ä¸‹ä¸€æ¬¡äº¤äº’å¼�解释器会è¯�期间将继ç»å�¯ç”¨ã€‚
14.2. 默认交互�解释器的替代�¶
Python 解释器与早期版本的相比,å�‘å‰�迈进了一大æ¥ï¼›æ— è®ºæ€Žæ ·ï¼Œè¿˜æœ‰äº›å¸Œæœ›çš„åŠŸèƒ½ï¼šå¦‚æžœèƒ½åœ¨ç¼–è¾‘è¿žç»è¡Œæ—¶å»ºè®®ç¼©è¿›ï¼ˆè§£æž�器知é�“接下æ�¥æ˜¯å�¦éœ€è¦�缩进符å�·ï¼‰ï¼Œé‚£å°†å¾ˆæ£’。补全机制å�¯ä»¥ä½¿ç”¨è§£é‡Šå™¨çš„符å�·è¡¨ã€‚有命令去检查(甚至建议)括å�·ï¼Œå¼•å�·ä»¥å�Šå…¶ä»–符å�·æ˜¯å�¦åŒ¹é…�。
一个å�¯é€‰çš„增强型交互å¼�解释器是 IPython,它已ç»�å˜åœ¨äº†æœ‰ä¸€æ®µæ—¶é—´ï¼Œå®ƒå…·æœ‰ tab 补全,探索对象和高级历å�²è®°å½•管ç�†åŠŸèƒ½ã€‚å®ƒè¿˜å�¯ä»¥å½»åº•定制并嵌入到其他应用程åº�ä¸ã€‚å�¦ä¸€ä¸ªç›¸ä¼¼çš„增强型交互å¼�环境是 bpython。