无论我们需要一些模块的帮助, 还是想要快速测试一段代码, Python 解释器都有很大帮助。我这篇文章, 我们将介绍不同的方式, Python 解释器来方便。在以前的文章中, 我们有:

你还在等什么?开始你的翻译, 并按照我们谈论:

  • 从译员那里得到帮助。
  • 导入模块。
  • 列出所有可用模块。
  • 执行一些 Python 代码。

我们开始吧!

帮助 ()

我想谈论的第一个有用的功能是内置 help() 函数。它来自 __builtins__ 模块, 并有很大的帮助。有两种使用方式 help交互式帮助有关对象的帮助

交互式帮助

要开始, 请确保您已准备好译员。现在, 键入 help() 并按返回键。您现在应该看到类似于以下内容的屏幕:

Interactive help from Python Interpreter

help>显示我们的交互式帮助是准备好帮助我们。现在, 我们可以使用它来获得不同模块和功能的帮助。让我们尝试一下, 然后搜索如下 math math.pow 所示:

help> math

Help on module math:

NAME
    math

MODULE REFERENCE
    https://docs.python.org/3.7/library/math    
    The following documentation is automatically generated from the Python
    source files.  It may be incomplete, incorrect or include features that
    are considered implementation detail and may vary between Python
    implementations.  When in doubt, consult the module reference at the
    location listed above.

DESCRIPTION
    This module is always available.  It provides access to the
    mathematical functions defined by the C standard.

FUNCTIONS
    acos(x, /)
        Return the arc cosine (measured in radians) of x.

    acosh(x, /)
        Return the inverse hyperbolic cosine of x.<br>

help> math.pow

Help on built-in function pow in math:

math.pow = pow(x, y, /)
    Return x**y (x to the power of y).
(END)

我们可以通过按下 q 键, 然后按返回键来退出帮助文档和交互式帮助。

有关对象的帮助

我们经常需要一些模块的快速帮助, 而不是输入交互式帮助, 这就是对象帮助的地方。因此, 当我们的译员准备就绪时, 我们可以通过使用函数获得有关模块或函数的帮助 help(<object>)

为了获得帮助, math.pow 我们首先需要导入数学模块, 并向战俘功能寻求帮助。请参考以下代码:

>>> import math
>>> help(math

战俘 = 战俘 (x, y,/) 返回 x *** y (x 到 y 的幂)。
结束

请注意, 我们必须首先导入数学模块, 否则, 我们会得到一个错误, 如下所示:

>>> help(math.pow)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'math' is not defined

还有一种方法可以在特定模块上获得帮助。我们可以使用函数调用找到所有可用的模块 help("modules") 。它将返回一个结果类似于以下内容:

help(&quot;modules&quot;)

很明显, 上面的图像中显示的列表不完整。好了, 现在我们已经知道了可用的模块, 我们可以得到他们的帮助, 这次我们甚至不会导入一个。

是的, 我们可以得到一个模块的详细信息, 而无需导入它, 并且这样做, 我们使用的 help("module_name") 功能, 如下所示:

>>> help("flask")

Help on package flask:

NAME
    flask

DESCRIPTION
    flask
    ~~~~~

    A microframework based on Werkzeug.  It's extensively documented
    and follows best practice patterns.

    :copyright: © 2010 by the Pallets team.
    :license: BSD, see LICENSE for more details.

PACKAGE CONTENTS
    __main__
    _compat
    app
...

进口

导入命令可帮助您导入当前不可用的模块。默认情况下, 通常使用的模块, 如数学、随机、web、日期时间等, 都不可用和准备使用。要使用这些模块或任何其他模块, 我们首先需要导入该模块, 然后使用它。您可以这样做简单地通过使用 import <module> 命令, 就像我们前面使用我们的帮助功能。

设想一下, 在运行你的应用时, 你已经安装了烧瓶 ModuleNotFoundError 。这就是导入命令来营救的地方。如果模块导入成功, 则命令不会返回任何内容。但是, 如果导入失败, 我们会收到一个错误, 如下所示:

>>> import math   #successful import
>>> import flask  #import fails
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'flask'

dir ()

另一个有用的功能, 我想谈的是内置 dir() 函数。与 Windows/DOS 上的 dir 命令类似, 如果不带参数调用 dir 函数, 则返回当前作用域中不同模块的名称。

>>> dir()
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']
>>>
>>>

当与对象一起使用时, 它将返回一个按字母排序列表, 其中包含给定对象的属性以及可从其访问的属性的名称。将 help(dir) 其定义为:

如果对象提供名为 __dir__ 的方法, 将使用它;否则, 将使用默认 dir () 逻辑并返回:
对于模块对象: 模块的属性。
对于类对象: 其属性, 并递归其基的属性。
对于任何其他对象: 其属性、类的属性和递归其类的基类的属性

quickdevnotes.com/wp-content/uploads/2018/10/dir.png “宽度 =” 1302 “/>>

当我们导入任何模块, 比方说数学模块, 然后我们可以看到这些模块在响应或函数的结果 dir() 。此外, 如果我们在该范围内创建了一些对象, 那么我们也将看到这些对象。

>>> dir()
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'math', 'numbers', 'os', 'random']
>>>
>>>

执行代码

现在我们已经了解了如何从解释器获得帮助, 我们该看看如何使用该帮助并执行一些代码来进行快速测试。因此, 让我们创建一个整数列表, 然后使用该函数打印每个数字的平方 math.pow

让我们开始 Python 解释器并创建整数列表并将其分配给变量:

>>> numbers = [1, 2, 3, 4, 5]
>>> type(numbers)
<class 'list'>
>>>

type(numbers) 函数返回变量或对象引用的类型。现在, 让我们导入 math 模块, 遍历数字列表, 然后打印每一个正方形, 如下代码所示:

>>> import math
>>> for number in numbers:
...     square = math.pow(number, 2)
...     print(square)
... 
1.0
4.0
9.0
16.0
25.0
>>>

如果我们搞砸了什么, 解释器也给我们详细的错误, 如下所示:

>>> import math
>>> for number in numbers:
...     print(math.pow(number*2))
... 
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
TypeError: pow() takes exactly 2 arguments (1 given)

总结

这篇文章的重点是让我们熟悉和舒适的 Python 解释器, 无论是关于获得一些帮助或快速测试一段代码。毫无疑问, 翻译是大多数初学者开始学习 Python 的地方, 我们使用它的越多, 我们就越有效率。在下一篇文章中, 我们将讨论 pip 和一些最有用的命令。

Comments are closed.