簡體   English   中英

如何獲取 Python 函數的源代碼?

[英]How can I get the source code for Python functions?

我正在學習 Python 以及如何上課。 我很好奇這些類是如何在 Python 本身內部制作的,例如。 在 datetime.py(我通過谷歌搜索找到它)中,我正在檢查他們如何使用__add____sub__ ,它們使用“if isinstance(other, timedelta):”,這是一個有趣的學習。 此外,我正在學習專業編寫的程序是什么樣的。

我的問題是如何找到Python里面的內部類和函數的源代碼,比如我很想看看他們是怎么實現add in print()的,可以print(1+2) -> 3 and print('a'+'b') -> ab

Python 參考實現的源代碼可在其 GitHub 鏡像中獲取。 但是,值得注意的是,Python 語言的大部分都在 C 中實現,包括核心引擎和許多標准庫庫。 真正理解引擎蓋下的一切是如何實現的需要相當多的流利度 C。

Python 是一種開源語言,這意味着源代碼可供任何感興趣的各方使用。 我建議查看您正在使用的機器上的源文件或查看CPython Github 存儲庫。

print()是一個內置模塊。 它寫在 C 中,源代碼可以在文件 bltinmodule.c中查看。

您可能還會發現了解 Python 中可用的函數以獲得幫助很有用,例如help()此處提供文檔)。 要了解print() function,您可以致電:

help(print)

我建議閱讀初學者指南作為獲取更多資源的起點。

ipython是探索事物運作方式的絕佳工具。 只需添加“??” 在 function 或其他可調用的之后,它會在可能的情況下顯示代碼,即。 當它是“純蟒蛇”時。

例如:

import this
this??

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM