मेरा मानना है कि आप जो चाहते हैं वह कुछ इस तरह है:
किसी वस्तु से विशेषताओं की सूची
मेरी विनम्र राय में, अंतर्निहित फ़ंक्शन dir()
आपके लिए यह काम कर सकता है। help(dir)
अपने पायथन शेल पर आउटपुट से लिया गया :
dir (...)
dir([object]) -> list of strings
यदि एक तर्क के बिना कहा जाता है, तो मौजूदा दायरे में नाम वापस करें।
एल्स, दिए गए ऑब्जेक्ट की विशेषताओं (और कुछ) में शामिल नामों की वर्णमाला सूची लौटाएं, और इसमें से उपलब्ध विशेषताएँ।
यदि ऑब्जेक्ट नाम की एक विधि की आपूर्ति करता है __dir__
, तो इसका उपयोग किया जाएगा; अन्यथा डिफ़ॉल्ट dir () तर्क का उपयोग किया जाता है और वापस आता है:
- मॉड्यूल ऑब्जेक्ट के लिए: मॉड्यूल की विशेषताएँ।
- एक वर्ग वस्तु के लिए: इसकी विशेषताएँ, और इसके आधारों के पुनरावर्ती गुण।
- किसी भी अन्य वस्तु के लिए: इसकी विशेषताएँ, इसकी कक्षा की विशेषताएँ और इसके वर्ग के आधार वर्गों की पुनरावृत्ति की विशेषताएँ।
उदाहरण के लिए:
$ python
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> a = "I am a string"
>>>
>>> type(a)
<class 'str'>
>>>
>>> dir(a)
['__add__', '__class__', '__contains__', '__delattr__', '__doc__',
'__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__',
'__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__',
'__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__',
'__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__',
'__setattr__', '__sizeof__', '__str__', '__subclasshook__',
'_formatter_field_name_split', '_formatter_parser', 'capitalize',
'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find',
'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace',
'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition',
'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip',
'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title',
'translate', 'upper', 'zfill']
जैसा कि मैं आपके मुद्दे की जाँच कर रहा था, मैंने अपने विचार को प्रदर्शित करने का निर्णय लिया, जिसके आउटपुट का एक बेहतर प्रारूपण था dir()
।
dir_attributes.py (पायथन 2.7.6)
#!/usr/bin/python
""" Demonstrates the usage of dir(), with better output. """
__author__ = "ivanleoncz"
obj = "I am a string."
count = 0
print "\nObject Data: %s" % obj
print "Object Type: %s\n" % type(obj)
for method in dir(obj):
# the comma at the end of the print, makes it printing
# in the same line, 4 times (count)
print "| {0: <20}".format(method),
count += 1
if count == 4:
count = 0
print
dir_attributes.py (Python 3.4.3)
#!/usr/bin/python3
""" Demonstrates the usage of dir(), with better output. """
__author__ = "ivanleoncz"
obj = "I am a string."
count = 0
print("\nObject Data: ", obj)
print("Object Type: ", type(obj),"\n")
for method in dir(obj):
# the end=" " at the end of the print statement,
# makes it printing in the same line, 4 times (count)
print("| {:20}".format(method), end=" ")
count += 1
if count == 4:
count = 0
print("")
आशा है कि मैंने योगदान दिया है :)।