python--怎么查看模块OS里listdir()函数的源代码,也就是怎么定义istdir()的代码?

Python017

python--怎么查看模块OS里listdir()函数的源代码,也就是怎么定义istdir()的代码?,第1张

在 python 官网下载 Gzipped source tar ball, 解压缩后, 会发现 Lib/os.py 文件这行代码

from posix import *

可是没有文件叫 posix.py 啊, 到底在那 ? 其实 posix module 是 builtin 的其中一分子,如下示范:

>>>import sys

>>>print sys.builtin_module_names

(*__builtin__*, *__main__*, *_ast*, *_codecs*, *_sre*, *_symtable*, *_warnings*, *_weakref*, *errno*, *exceptions*, *gc*, *imp*, *marshal*, *posix*, *pwd*, *signal*, *sys*, *thread*, *zipimport*)

>>>

所以要去 Modules 目录查找 c 代码, 你会看见 posixmodule.c, 打开它看见这行代码:

{"listdir", posix_listdir, METH_VARARGS, posix_listdir__doc__},

再寻找上面所得到的 posix_listdir method, 可以找到 listdir 源代码:

static PyObject *

posix_listdir(PyObject *self, PyObject *args)

{

/* XXX Should redo this putting the (now four) versions of opendir

in separate files instead of having them all here... */

#if defined(MS_WINDOWS) &&!defined(HAVE_OPENDIR)

PyObject *d, *v

HANDLE hFindFile

BOOL result

在本演练中,可以将任何文件夹与你喜欢的

Python

代码搭配使用。 若要按照如下所示的示例操作,请在相应文件夹中使用命令 git

clone

https://github.com/gregmalcolm/python_koans 将

gregmalcolm/python_koans

GitHub

存储库克隆到你的计算机。

在“启动”窗口中启动

Visual

Studio

2019,然后在“开始”栏底部选择“打开”

。 或者,如果已在运行

Visual

Studio,请改为选择“文件”

>

“打开”

>

“文件夹”

命令。

导航到包含

Python

代码的文件夹,然后选择“选择文件夹”

。 如果使用的是

python_koans

代码,请务必选中克隆文件夹中的 python3 文件夹。

Visual

Studio

将在解决方案资源管理器中的“文件夹视图”中显示该文件夹

。 可以使用文件夹名称左边缘的箭头展开和折叠文件夹:

打开

Python

文件夹时,Visual

Studio

将创建几个隐藏文件夹来管理与项目相关的设置。 若要查看这些文件夹(以及任何其他隐藏的文件和文件夹,如

.git

文件夹),请选择

“显示所有文件”工具栏按钮:

要运行代码,首先需要确定启动文件或主程序文件。 在此处显示的示例中,启动文件为

contemplate-koans.py

。 右键单击该文件,然后选择“设为启动项”

Ctrl

+F5

,或依次选择“调试”

>

“启动但不调试”

运行代码

。 另外,还可以选择显示带有播放按钮的启动项的工具栏按钮,在

Visual

Studio

调试程序中运行代码。 在所有情况下,Visual

Studio

会检测到启动项是一个

Python

文件,因此会在默认

Python

环境中自动运行代码。 (该环境显示在工具栏上启动项的右

若要在其他环境中运行代码,请从工具栏上的下拉列表框控件中选择该环境,然后再次启动启动项。

若要关闭

Visual

Studio

中的文件夹,请选择“文件”

>

“关闭文件夹”

菜单命令