پرسش
آیا تابع داخلی برای چاپ تمام خصوصیات و مقادیر فعلی یک شیء در پایتون وجود دارد؟
Is there a built-in function to print all the current properties and values of an object in Python?
آیا در پایتون تابع داخلی وجود داره که بتونه تمام خصوصیات و مقادیر فعلی یک شیء رو چاپ کنه؟ مثلاً وقتی یک کلاس تعریف میکنیم و شیء از اون میسازیم، چطوری میتونیم به راحتی تمام ویژگیهای اون شیء و مقادیرش رو ببینیم؟
پاسخ
رضا دولتی
عاشق برنامه نویسی و هوش مصنوعی!
در پایتون برای اینکه بتونی تمام خصوصیات و مقادیر فعلی یک شیء رو ببینی، میتونی از تابع vars() یا __dict__ استفاده کنی. این تابعها به تو دیکشنریای رو میدهند که شامل تمام خصوصیات و مقادیر شیء هست.
مثال:
class MyClass:
def __init__(self):
self.name = "Reza"
self.age = 28
self.language = "Python"
# Creating an instance of MyClass
obj = MyClass()
# Printing all properties and their values
for key, value in vars(obj).items():
print(f"{key}: {value}")
# Using __dic__
for key, value in obj.__dict__.items():
print(f"{key}: {value}")
در مثال بالا، vars(obj) دیکشنریای از تمام ویژگیها و مقادیر شیء obj برمیگردونه
اگر شیء ای که میخوای خصوصیاتش رو ببینی از کلاس پایه پایتون مثل int یا list نیست، میتونی از این روش استفاده کنی.
پاسخ: 1403/06/03
آخرین آپدیت: 1403/07/29