python中的帮助_Python帮助系统

Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发。

在编写和运行Python程序时,你可能会遇到瓶颈,并需要得到帮助。你可能需要知道某些模块、类、函数、关键字等的含义。好消息是Python自带了一个内置的帮助系统。这意味着你不需要在Python本身之外寻求帮助。

在本文中,你将学习如何使用内置的Python帮助系统。

Python help() 函数

这个函数会帮助我们获得某个类、函数、变量、模块等的文档。你需要在Python控制台中使用该函数来获取各种Python对象的详细信息。

向help() 函数传入一个对象

Python help()函数的语法如下:

b27b79206bf94787a17345cb1fbc621b.png

在上面的语法中,object(对象)参数是你需要获取帮助信息的对象的名称。

例如,你要更多地了解Python的print函数,你可以在Python控制台输入以下命令:

47ff4d44f7464c59aa49913ac316b6e0.png

输出:

5a199645ce17451c86acde987725b0a2.png

要获得dict类的帮助信息,请在Python控制台输入以下内容:

3dd68dfaafe4422b8c41420cd4386fb9.png

输出:

ee1746ea500343f4b6abba6aa80f16c1.png

你还可以将一个实际的list对象传递给help()函数:

e2a91d79ec83439fbdd9d4a983d9b372.png

输出:

ef01959f450640b79638ad8b6b13bb49.png

我们可以看到,当你将一个对象传递给help()函数时,它的文档或帮助页面就会被打印出来。在下一节中,你将了解将字符串参数传递给help()函数的有关内容。

向 help()传入一个字符串参数

如果你将一个字符串作为参数传递,该字符串会被视为一个函数、模块、关键字、方法、类或文档主题的名称,相应的帮助页面会被打印出来。若要将其标记为一个字符串参数,请将其括在单引号或双引号内。

例如:

6bc324fbd3874332b3724cafe7b84e87.png

输出:

1f23136d5f7149fb864e1afdb5ea3227.png

虽然我们将“print”作为一个字符串参数进行传递,但仍然获得了Python的print函数的文档。下面是另一个例子:

5c3ef5ac510b4719aaea8b28e5ab5068.png

输出:

31f9294164c14a3eb972131b6fc8c2be.png

这里,我们将“def”作为一个字符串参数传递给help()函数,它返回了用于定义函数的文档。

如果没有找到匹配的对象、方法、函数、类或模块,你将得到通知信息。例如:

16bdec7cc9554731b13da56556604eff.jpg

输出:

19893ac22b9640a58abec089c0261601.jpg

我们被告知没有找到关于我们的字符串的任何文档。

有时候,我们可能需要获得关于某个Python库中定义的某个函数的帮助信息。这要求我们首先导入这个库。一个很好的例子是,当我们需要获得Python的math库中定义的log函数的文档时。在这种情况下,我们首先需要导入math库,然后再调用help()函数,如下所示:

de64b3dcf69e470dad2bc9b17d2c2f02.jpg

输出:

4d0c89497ed14e10b2f5d97df08ec99f.jpg

使用不带参数 的help() 函数

help()函数可以不带参数使用。如果你不带参数运行该函数,交互式的Python帮助程序就会在解释器控制台启动。你只需要在Python控制台输入以下命令:

f4d7b3e95e6f4aa0af1405db0c14f749.jpg

这将返回Python的帮助程序,你可以在该实用程序上输入需要获得帮助信息的对象的名称。例如:

41fd37b467db49968a1e94c782b0bec6.jpg

输出:

caeca849452a415b8061f83af04b27da.jpg

要返回到前面的提示符,只需按“q”。

下面是另一个例子:

00bba1ba5bcc47c98fc2cd0189e1942a.jpg

输出:

e0ce85a84a55456fb300b385678031f9.jpg

要离开帮助程序并返回到Python控制台,你只需键入“quit”并按enter键:

839ded26f12841e9a4175915340c7717.jpg

输出:

9dadf64509fd49b1a17f11f7ece3510f.jpg

在下一节中,我们将讨论如何为自定义对象定义help()。

为自定义函数和类定义帮助文档

通过定义一个docstring(文档字符串),我们可以为我们的自定义函数和类定义help()函数的输出。在Python中,添加到方法主体的第一个注释字符串会被视为方法的docstring。这个注释必须用三个双引号括起来。例如:

c234dc8fb6b94207991ad15be8f60882.jpg

在上面的例子中,我们定义了一个名为product的函数。这个函数乘以两个整数值,a和b会作为实参/形参传递给它。请看三个双引号内的注释:

c9e11df61b074ad09dc22df758f0e43a.jpg

这条注释将被作为product函数的docstring。

现在,创建一个新文件并将其命名为“myfile.py”。将以下代码添加到文件中:

ba10f50256c14bcb927a0b85ccac2e01.jpg

在上面的例子中,我们已经为一个函数、类和方法定义了docstring。

现在,我们需要演示如何在Python控制台中将上面的docstring作为帮助文档来获取。

首先,我们需要在控制台上执行该脚本,以便将函数和类定义加载到Python环境中。对此,我们可以使用Python的exec()方法。在Python控制台运行以下命令:

9de8ec36d015482e9d877d2a6da8e723.jpg

或者,如果你已经在Python IDLE中编写了代码,那么你只需运行它。

现在,我们可以通过在Python控制台运行globals()命令来确认函数和类模块是否已经被检测到:

88a832551e2641fb96b2d752c1a1fb46.jpg

在我的例子中,我得到如下输出:

07b6f7f90da14eb694f2071bfd225b73.jpg

如上面的输出所示,Student和product都在全局范围字典中。现在,我们可以使用help()函数来获得Student类和product函数的帮助信息。只需在Python控制台运行以下命令:

19faff8935044de09f032e495fe4f915.jpg

输出:

5579de1297f64fab833d5676d281bb11.jpg

我们来查看product函数的帮助文档:

62608051bcbe49a283bc7fc85bd7ae71.jpg

输出:

3d28d41f76df49a0ad62b39cfeafe854.jpg

现在,我们来访问Student类的帮助文档:

f35b3af9978e4293b30c7bd9bfe4bbf1.jpg

输出:

3114653055684256a89882eb22e6ce4c.jpg

在输出中,我们可以看到我们为Student类编写的文档。

结论

Python提供了一个内置的帮助系统,我们可以从中获得关于模块、类、函数和关键字的帮助信息。你可以在REPL中使用Python的help()函数来访问这个帮助程序。当我们调用这个函数并将一个对象传递给它时,它会返回该对象的帮助页面或文档。当我们在不带参数的情况下运行该函数时,帮助程序会被打开,我们可以在其中以交互的方式来获得关于对象的帮助信息。最后,为了获得关于自定义类和函数的帮助信息,我们可以定义docstring(字符串文档)。英文原文:https://stackabuse.com/the-python-help-system/

译者:一瞬

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值