پرسش
آیا تابع داخلی برای چاپ تمام خصوصیات و مقادیر فعلی یک شیء در پایتون وجود دارد؟
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