This repository was archived by the owner on Aug 11, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathexercise-general-week-05-02.py
More file actions
56 lines (47 loc) · 2.06 KB
/
exercise-general-week-05-02.py
File metadata and controls
56 lines (47 loc) · 2.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
my_characters = []
###~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# یک کلاس ساخته ایم تا حروف انگلیسی بزرگ و اعداد متناظر با آنها را
# ذخیره کرده و در صورت نیاز نمایش دهیم
class Character:
def __init__(self, ch, no):
self.ch = ch
self.no = no
# سوال ۱
# این متد چه کاری انجام میدهد؟ اگر آن را حذف کنیم در خروجی
# چه تغییری رخ میدهد
def __str__(self) -> str:
return f"Character: {self.ch} - {self.no}"
# سوال ۲
# این متد چه کاری انجام میدهد؟ اگر آن را حذف کنیم در خروجی
# چه تغییری رخ میدهد
def __repr__(self) -> str:
# object representation in string format
return f"Ch: {self.ch} - {self.no}"
###~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# تمرین ۱
# بازه اعداد را به شکلی تغییر دهید که حروف کوچک در لیست ما نمایش
# داده شوند
for counter in range(65, 91):
my_characters.append(Character(chr(counter), counter))
print(my_characters)
###~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# تمرین ۲
# قطعه کد زیر را از حالت کامنت خارج کنید و اجرا کنید
"""
for character in my_characters:
print(character)
"""
###~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# سوال ۳
# سپس در مرحله بعدی متد
# __str__
# را حذف کنید و دوباره از کدی که کامنت شده اجرا بگیرید
# آیا میتوانید تحلیل کنید چه اتفاقی رخ میدهد؟
###~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# سوال ۴
# سپس در مرحله بعدی هر دو متد
# __str__
# و
# __repr__
# را حذف کنید و دوباره از کدی که کامنت شده اجرا بگیرید
# آیا میتوانید تحلیل کنید چه اتفاقی رخ میدهد؟