#تمرین_شئ_گرایی
تمرین سوم
1. یک کلاس با اسم Contact بسازید
که شامل 5 instance attribute باشد
به اسم :
name,last_name , phone=None, email=None, display_mode="masked"
2. آبجکت های شما باید قابلیت استفاده از عملگر مساوی را داشته باشند
شرط های لازم برای مساوی بودن :
phone , email مقدار None نداشته باشند
و مساوی باشند
یا
name, last_name باهم مساوی باشند
3. آبجکت رو نسبت به name last_name phone email
hashable کنید
4. یک تابع بنویسید که یک کلمه ورودی بگیره و فقط 2 حروف اول رو برداره و جای بقیه حروف ها * بزاره
و return کنه
میتونید از اسم obfuscated استفاده کنید (مبهم)
5. وقتی آبجکت رو با فرمت صدا میزنید
بیاد display_mode رو چک کنه
اگر masked بود
دیتاهارو به صورت مبهم نمایش بده
Contact(name='Mo******', last_name='fa*****')
و یا اگر unmasked بود
دیتاهارو کامل نمایش بده
Contact(name='Mohammad', last_name='fadakar')
6. وقتی از تابع repr استفاده میکنید
نسبت به متغیر disply_mode
بیاد از فرمت ها استفاده کنه
7. وقتی از تابع str
روی آبجکت استفاده میکنید فقط حروف اول اسم و فامیل به صورت بزرگ return کنه
این تمرین برای درک بهتر فرمت ها و
repr و str هستش
جواب این سوال در گیت هاب قرار گرفته است
https://github.com/persianpython/PythonObjectOriented
>>Click here to continue<<
