python交互模式下小技巧

作者: My熊猫眼 | 来源:发表于2020-04-06 12:08 被阅读0次

在遇到执行python程序报错的时候,我们很有可能需要到交互模式下去进行排错,在这里介绍几个交互模式下的小技巧,希望能够帮到你:

如果不记得某个模块的名字,用 help("modules KEYWORD") 来通过关键字找到模块的名字;

每个模块都包含有很多的属性和方法,为了过滤出来需要的方法和属性,可以用:
[x for x in dir(MODULE) if x.__contains__(KEYWORDS)] #基于属性的名字过滤;
[name for name,obj in MODULENAME.__dict__.items() if isinstance(obj,types.BuiltinFunctionType) ] #基于属性的类型过滤

如果需要既基于名称,又基于类型来过滤,把两者联合起来使用就可以了.

在默认情况下,交互模式没有启用自动补齐的功能,但是我们可以手动开启,方法很简单:

import readline,rlcompleter  #rlcompleter模块中Completer类的complete方法会返回可能的结果,其被readline模块所使用;
readline.parse_and_bind("tab: complete")    #该语句在rlcompleter的帮助文档中,直接引用就可以

在python的交互模式下,有时候免不了需要查看os下的文件,这时候我们无需退出python交互模式就可以,只需要使用python的os 模块就可以了. 常用os模块中的system 方法: os.system("OS_COMMAND")

查看当前的namespace中相应模块的路径, 直接输入 module的名字就可以了.

在常见的"ImportError: No module named YYY" 之类的错误中,我们有时候会看到 对应发生错误的语句是: import XXX.YYY 之类的,那么怎么理解 XXX.YYY之类的语句呢?
因为 sys.path 支持目录,所以”XXX.YYY“ 表示 XXX目录下的YYY.py 文件,理解这一点很重要. 因为 导入的时候,查找的模块名称如果和目录匹配的话,那么会调用目录下的 __init__.py 来完成初始化,此时导入的模块对应的文件是 __init__.py ,这个文件甚至可以是一个空的.py文件;
而我们知道每一个文件都可以导入为一个模块,因此,该目录下的其他.py文件要导入为模块的时候就需要用: XXX.YYY这种模式,而如果有多层子目录,那么就变成了: XXX.YYY.ZZZ... 这种模式, 这些都是合法的用法.

在导入模块的时候,会发生初始化,在这个初始化的过程中:
普通函数的定义,类的定义等都不会被执行,但是 @FUNCTION 会被执行, 全局的执行语句也会被执行。 理解这些才能够进一步理解模块导入过程发生了什么. 从而才能更好的进行排错.

本文原创,转载请著名出处

相关文章

  • python交互模式下小技巧

    在遇到执行python程序报错的时候,我们很有可能需要到交互模式下去进行排错,在这里介绍几个交互模式下的小技巧,希...

  • Python --- 1

    1、在命令行模式下,输入python,即可进入到python交互模式。 2、Python交互模式下的命令提示符是:...

  • python学习(廖雪峰的官方网站)

    廖雪峰的官方网站。 请注意区分命令行模式和Python交互模式。 1在Python交互式模式下,可以直接输入代码,...

  • Python运行方式(三种)及编码格式说明

    一、交互模式 cmd 下可直接调用python exit可退出交互模式。 二、命令行脚本模式(文本模式) 在cmd...

  • python 每天进步一点点(4)

    一 Python彩蛋import this Python有个彩蛋,比如在交互模式下输入import this,便会...

  • python 交互模式的用法

    python交互模式用法

  • 第一个Python程序

    作者用的MAC 所以都是MAC的操作指令 打开终端输入 python 交互提示模式下的一些练习 (交互提示模式...

  • Python(1)

    一.命令行模式和Python交互模式 命令行模式:在开始菜单里:运行-cmd-进入命令行模式 Python交互模式...

  • Python-廖雪峰 笔记

    1. 交互模式和命令行模式: 进入cmd窗口直接是命令行模式,敲python之后进入的是python交互模式 cm...

  • Python语言初认识——4:第一个Python程序

    1:在正式编写第一个Python程序前,我们先复习一下什么是命令行模式和Python交互模式。 (1)命令行模式 ...

网友评论

    本文标题:python交互模式下小技巧

    本文链接:https://www.haomeiwen.com/subject/rdsvphtx.html