چاپ یک دسته ورق به چه صورت انجام میگیرد ؟

2

چاپ یک دسته ورق به چه صورت انجام میگیرد ؟ 

کیانا ابراهیمی Answered question اکتبر 15, 2020
Add a Comment
0

چاپ یک دسته ورق به چه صورت انجام میگیرد ؟ 

طبق معمول، هر گاه شیئی از یک نوع جدید را تعریف میکنیم، به متدي احتیـاج داریـم کـه محتـواي شیء را چاپ کند. براي چاپ یک Deck لیست را پیمایش کرده و هر Card را چاپ مینماییم:

class Deck:…
def printDeck(self):
for card in self.cards:
print card

در اینجا و از این پس، علامت سهنقطه (…) نشان میدهد که ما متدهاي دیگـر را در کـلاس حذف کردهایم. راه دیگري براي printDeck ،نوشتن یک متد __str __براي کلاس Deck است. مزیت __str __انعطافپذیري بیشتر آن است. مهمتر از چاپ محتـوا اینکـه، ایـن کـار یـک نمـایش رشتهاي تولید میکند که میتواند توسط بخشهاي دیگـر برنامـه قبـل از چـاپ دسـتکاري و یـا بـراي استفادههاي بعدي ذخیره شود. در اینجا نسخهاي از __str __را میبینید که نمایش رشتهاي یک Deck را برمیگرداند. این متد کارتها را به صورت آبشاري میچیند که در این حالت هر کارت بـه انـدازة یـک فاصـله بیشـتر از کارت قبلی کنگرهگذاري شده است:

class Deck:

def __str__(self):
s = “”
for i in range(len(self.cards)):
s = s + ” “*i + str(self.cards[i]) + “\n”
return s

این مثـال چنـدین خصیصـه را نمـایش مـیدهـد. اول، بـه جـاي پیمـایش cards.self و نسبتدهی هر کارت به یک متغیر، از i به عنوان یک متغیـر حلقـه و اندیسـی بـراي لیسـت کـارتهـا استفاده میکنیم. دوم، ما از ضرب رشتهها استفاده میکنیم تا هر کارت را با یک فاصـله بیشـتر نسـبت بـه قبلـی کنگرهگذاري کنیم. سوم، به جاي استفاده از دسـتور print بـراي چـاپ کـارتهـا، از تـابع __str __اسـتفاده میکنیم. ارسال یک شیء به str بهعنوان یک آرگومان، معادل احضار متد __str __بـر روي شـیء است. در نهایت ما از متغیر s به عنوان یک انباشتگر استفاده میکنیم. در آغـاز s یـک رشـتۀ تهـی است. در هر بار اجراي حلقه یک رشتۀ جدید تولید میشود و به مقـدار قبلـی s مـیپیونـدد تـا مقـدار جدیدي بگیرد. زمانی که حلقه پایان مییابد، s حاوي نمـایش رشـتهاي و کامـل Deck مـیباشـد کـه به صورت زیر است:

>>> deck = Deck()
>>> print deck
Ace of Clubs
2 of Clubs
3 of Clubs
4 of Clubs
5 of Clubs
6 of Clubs
7 of Clubs
8 of Clubs
9 of Clubs
10 of Clubs
Jack of Clubs
Queen of Clubs
King of Clubs
Ace of Diamonds

و به همین صورت حتی اگر نتیجه در 52 خط چاپ شود، تنها یک رشتۀ طولانی است که شامل کاراکترهاي خـط جدید میباشد.

برای اموزش های ویدیویی زبان پایتون به بستر ویدیو های اموزشی بروید

بستر اموزش های ویدویی 

کیانا ابراهیمی Answered question اکتبر 15, 2020
Add a Comment
Write your answer.
  • Active
  • Views1147 times
  • Answers1 answer
ورود به متاورس | متاورس ایرانی
ورود به متاورس ایران یا همان متاورس ملی

علامت ذره بین Tutorials سمت راست به رنگ قرمز به شما کمک خواهد کرد .

جدید ترین سوالات پرسیده شده

ایا ایدز گزفتم؟ 0 Answers | 0 Votes
انتخاب ورزش رزمی 0 Answers | 1 Vote
وزارت تعاون کار و رفاه اجتماعی اسناد و املاک کشور مرکز آموزش ویدیویی انجمن پرسش و پاسخ فروشگاه ملی تولید کنندگان مدیریت بر مدیران حم رسانه ملی اخبار متا دانشگاه متاورس استخدام | دانش محور فروشگاه مجازی حم تبلیغات ملی بازار NFT متاورس رنگ نقشه ملی سه بعدی متا تونل زمان متاآرت وبرنگ خانه