Hướng dẫn which library function returns the list of all functions in a module in python - hàm thư viện nào trả về danh sách tất cả các hàm trong một mô-đun trong python

Đối với các chức năng toàn cầu dir[] là lệnh sử dụng [như đã đề cập trong hầu hết các câu trả lời này], tuy nhiên, đây liệt kê cả chức năng công cộng và các chức năng không công khai cùng nhau.

Ví dụ: Chạy:

>>> import re
>>> dir[re]

Trả về các chức năng/lớp như:

'__all__', '_MAXCACHE', '_alphanum_bytes', '_alphanum_str', '_pattern_type', '_pickle', '_subx'

Một số trong đó thường không có nghĩa là cho việc sử dụng lập trình chung [nhưng bởi chính mô -đun, ngoại trừ trong trường hợp của những người dunderalias như __doc__, __file__ ect]. Vì lý do này, có thể không hữu ích khi liệt kê chúng với những người công khai [đây là cách Python biết những gì cần nhận khi sử dụng from module import *].

'__all__', '_MAXCACHE', '_alphanum_bytes', '_alphanum_str', '_pattern_type', '_pickle', '_subx'
0 có thể được sử dụng để giải quyết vấn đề này, nó trả về danh sách tất cả các chức năng và lớp công cộng trong một mô -đun [những chức năng không bắt đầu với dấu gạch dưới -
'__all__', '_MAXCACHE', '_alphanum_bytes', '_alphanum_str', '_pattern_type', '_pickle', '_subx'
1]. Xem ai đó có thể giải thích __all__ trong Python? cho việc sử dụng
'__all__', '_MAXCACHE', '_alphanum_bytes', '_alphanum_str', '_pattern_type', '_pickle', '_subx'
0.

Đây là một ví dụ:

>>> import re
>>> re.__all__
['match', 'fullmatch', 'search', 'sub', 'subn', 'split', 'findall', 'finditer', 'compile', 'purge', 'template', 'escape', 'error', 'A', 'I', 'L', 'M', 'S', 'X', 'U', 'ASCII', 'IGNORECASE', 'LOCALE', 'MULTILINE', 'DOTALL', 'VERBOSE', 'UNICODE']
>>>

Tất cả các chức năng và các lớp có dấu gạch dưới đã bị xóa, chỉ còn lại các chức năng được xác định là công khai và do đó có thể được sử dụng thông qua

'__all__', '_MAXCACHE', '_alphanum_bytes', '_alphanum_str', '_pattern_type', '_pickle', '_subx'
3.

Lưu ý rằng

'__all__', '_MAXCACHE', '_alphanum_bytes', '_alphanum_str', '_pattern_type', '_pickle', '_subx'
0 không phải lúc nào cũng được xác định. Nếu nó không được bao gồm thì một
'__all__', '_MAXCACHE', '_alphanum_bytes', '_alphanum_str', '_pattern_type', '_pickle', '_subx'
5 sẽ được nâng lên.

Một trường hợp này là với mô -đun AST:

>>> import ast
>>> ast.__all__
Traceback [most recent call last]:
  File "", line 1, in 
AttributeError: module 'ast' has no attribute '__all__'
>>>

Bạn có thể sử dụng DIR [mô -đun] để có tất cả các thuộc tính/phương thức của một mô -đun. Ví dụ,

>>> import math
>>> dir[math]
['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'hypot', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']

Nhưng ở đây như bạn có thể thấy các thuộc tính của mô -đun [__ name__, __doc__, v.v.] cũng được liệt kê. Bạn có thể tạo một chức năng đơn giản để lọc chúng bằng cách sử dụng vị từ isFunction và getMembers [mô -đun, vị ngữ] để có được các thành viên của một mô -đun. Ví dụ,

>>> from inspect import getmembers, isfunction
>>> import helloworld
>>> print [o for o in getmembers[helloworld] if isfunction[o[1]]]
['hello_world']

Lưu ý rằng điều này không hoạt động cho các mô -đun tích hợp vì loại chức năng cho các mô -đun đó không phải là chức năng mà được tích hợp trong chức năng.

Cập nhật vào ngày 30 tháng 9 năm 2019 08:59:07

  • Câu hỏi và câu trả lời liên quan
  • Làm thế nào để viết một mô -đun Python?
  • Làm thế nào để cài đặt một mô -đun Python?
  • Làm thế nào để phát triển một mô -đun Python?
  • Làm thế nào để xác định một mô -đun cụ thể trong Python?
  • Làm thế nào để tạo tất cả các hoán vị của một danh sách trong Python?
  • Nhập một mô -đun trong Python
  • Làm thế nào để lấy đường dẫn mô -đun Python?
  • Chức năng & Phương pháp danh sách tích hợp trong Python
  • Làm thế nào để nhập một hàm duy nhất từ ​​mô -đun Python?
  • Chương trình Python để in tất cả các nhóm phụ của một danh sách.
  • Làm thế nào để xóa một mô -đun đã cài đặt trong Python?
  • Làm thế nào để sử dụng mô -đun phụ trong Python?
  • Làm thế nào để có được một danh sách tất cả các khóa từ từ điển Python?
  • Làm thế nào để có được một danh sách tất cả các giá trị từ từ điển Python?
  • Làm cách nào để liệt kê tất cả các tệp của một thư mục trong Python?

Trong bài viết này, chúng tôi chỉ ra cách liệt kê tất cả các chức năng và thuộc tính của một mô -đun trong Python.

Vì vậy, trong Python, có một phương thức dir [] có thể liệt kê tất cả các hàm và thuộc tính của một mô -đun.

Bên trong hàm Dir [] này, chúng tôi chỉ định mô -đun mà chúng tôi muốn xem tất cả các hàm và thuộc tính của.

Ví dụ: trong mã sau đây, chúng tôi hiển thị tất cả các hàm và thuộc tính của mô -đun HĐH.

Vì vậy, điều đầu tiên chúng ta phải làm là nhập mô -đun HĐH.

Sau khi bạn nhập mô -đun HĐH, sau đó chúng tôi chuyển mô -đun HĐH vào hàm Dir []. Điều này đưa ra tất cả các thuộc tính và chức năng của mô -đun HĐH.

Điều này in ra tất cả các thuộc tính và chức năng của mô -đun HĐH.

Bạn có thể thấy có các chức năng như listdir, mkdir, makedirs, v.v.

Điều này tạo ra các thuộc tính như tên, đường dẫn, v.v.

__ tất cả __ làm gì trong Python?

Biến __all__ là một danh sách các đối tượng công khai của mô -đun đó, như được giải thích bằng nhập *.Biến này ghi đè lên mặc định che giấu mọi thứ bắt đầu bằng dấu gạch dưới.overrides the default of hiding everything that begins with an underscore.

Lệnh nào được sử dụng để xem tất cả các chức năng trong một thư viện cụ thể?

Bạn có thể sử dụng LSF.lsf.

Việc sử dụng tất cả [] và bất kỳ [] trong Python là gì?

Các chức năng Python bất kỳ [] và tất cả [] [] đánh giá các mục trong một danh sách để xem cái nào là đúng.Phương thức bất kỳ [] trả về đúng nếu bất kỳ mục nào trong danh sách là đúng và hàm tất cả [] trả về đúng nếu tất cả các mục danh sách là đúng.evaluate the items in a list to see which are true. The any[] method returns true if any of the list items are true, and the all[] function returns true if all the list items are true.

Làm thế nào để tôi thấy những phương pháp nào trong mô -đun Python?

Bạn có thể sử dụng DIR [Mô -đun] để xem tất cả các phương thức/thuộc tính có sẵn ...
Tôi đã đưa ra trường hợp sử dụng mô -đun AST trong một số tình huống nhất định trong câu trả lời của tôi.....
TL; DR của câu trả lời dưới đây: Sử dụng Dir để trả về các hàm và biến;chỉ sử dụng kiểm tra để lọc các chức năng;và sử dụng AST để phân tích mà không cần nhập ..

Bài Viết Liên Quan

Chủ Đề