Python 在哪里可以找到os.uradom()的源代码?

Python 在哪里可以找到os.uradom()的源代码?,python,python-3.x,random,python-internals,Python,Python 3.x,Random,Python Internals,我想调查和研究Python3.7的os.uradom()函数的代码。 我查看了相应的标准库的os.py,但它既没有在那里定义,也没有在那里导入。 我还试图对定义进行grep: /usr/lib/python3.7$grep-rFl“def urandom”2>/dev/null 但什么都没有。 我怀疑在os.uradom()上发生了一些神奇的事情。 在哪里可以找到用于研究和密码分析的函数定义?在POSIX系统和Windows上,为os模块定义的许多名称都由处理。请注意,源代码是C语言,而不是Py

我想调查和研究Python3.7的
os.uradom()
函数的代码。 我查看了相应的标准库的
os.py
,但它既没有在那里定义,也没有在那里导入。 我还试图对定义进行grep:

/usr/lib/python3.7$grep-rFl“def urandom”2>/dev/null
但什么都没有。 我怀疑在os.uradom()上发生了一些神奇的事情。
在哪里可以找到用于研究和密码分析的函数定义?

在POSIX系统和Windows上,为
os
模块定义的许多名称都由处理。请注意,源代码是C语言,而不是Python语言,因为访问系统函数需要本机代码

您可以看到这是,它基于当前操作系统导入
posix
nt
,这两个名称都是从上面的
posixmodule.c
文件编译而来,但被重命名以更好地反映平台,并指示两个变体之间的功能不同(
nt
变体提供的功能较少)


有关
os.urandom()
的实现详细信息,请参阅。这将委托给内部函数
\u PyOS\u urandom()
,以及Python启动过程早期所需的其他助手函数,在中定义。

关于当前实现的一些背景:谢谢。我追溯到了我要找的基本上是wich(WIN32不协调我的atm。)。@RichardNeumann:
dev_uradom()
是最后一个需要调用的函数。如果您使用的是支持的操作系统,那么这是首选(Linux、Solaris),将使用next(OpenBSD),并且只有当这些调用不可用时,Python才会从
/dev/uradom
读取。感谢您的提示。我一定跳过了。