獨家Python教學:dir()和help()的使用時機


獨家Python教學:dir()和help()的使用時機


有關Python的內建函數:dir()與help(),常常一堆人搞不清楚,今天就來見真章!

Python 中 dir()、help()的使用
想要使用Python來編寫程式碼時,經常會選擇使用 Python 中的內建函數 (Built-in Functions)或是模組。如果遇到對一些函數、模組不清楚的情形,則可以通過 dir() 和 help() 查詢說明或屬性。

help(): 用於查看屬性及方法的詳細解釋

Python 內建函數 - dir()

「dir()」的用途,是用於查詢物件的全部屬性。例如今天你想使用 dir() 函數用於查看物件「str」 的全部屬性,你就寫了:
>>>print dir(str)
執行結果如下:
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isascii', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']

如果現在dir() 的括弧內不帶任何參數物件,它的執行結果則會最大限度地顯示出當前範圍內的變數、方法和屬性列表。
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']

Python 內建函數 - help()


help(): 用於查看函式或模組用途的詳細說明。

例如今天你想使用 help() 用於查看「dir」 的用途,你就寫了:
>>>help(‘dir’)
執行結果如下:
Help on built-in function dir in module builtins:

dir(…)
    dir([object]) -> list of strings

    If called without an argument, return the names in the current scope.
    Else, return an alphabetized list of names comprising (some of) the attributes
    of the given object, and of attributes reachable from it.
    If the object supplies a method named __dir__, it will be used; otherwise
    the default dir() logic is used and returns:
      for a module object: the module’s attributes.
      for a class object:  its attributes, and recursively the attributes
        of its bases.
      for any other object: its attributes, its class’s attributes, and
        recursively the attributes of its class’s base classes.




相關文章:

如何應對AI?Python是解答嗎?-七種可能被取代的白領職業

今天教你怎麼用Python簡單畫出這隻黃色老鼠!

Python課程真的不得了啦!AI開始"獨立思考"了!

網頁設計之HTML5初級教學(8)-Drag & Drop機制下篇

素人變身工程師最佳捷徑,還不來上Java課程!

暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~

NOWnews 今日新聞

這個網誌中的熱門文章

Python控制結構一點就通!(5)while迴圈

前端工程師絕不能搞錯的CSS中:逗號.空格的差別!

網頁前端CSS必學兩屬性:display與visible