توزیع کارت به چه صورت انجام میشود ؟

2

توزیع کارت به چه صورت انجام میشود ؟

کیانا ابراهیمی سوال پاسخ داده شده اکتبر 15, 2020
گذاشتن نظر
0

توزیع کارت به چه صورت انجام میشود ؟

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

class Deck:

def deal(self, hands, nCards=999):
nHands = len(hands)
for i in range(nCards):
if self.isEmpty(): break # break if out of cards
card = self.popCard() # take the top card
hand = hands[i % nHands] # whose turn is next?
hand.addCard(card) # add the card to the hand

پارامتر دوم، nCards ،اختیاري است: مقدار پیشفـرض عـدد بزرگـی اسـت کـه یعنـی تمـام کارتهاي درون دسته ورق توزیع خواهد شد. متغیر حلقه، i ،از 0 تا 1-nCards را سیر میکند. هر بار در طول حلقه یک کـارت از دسـته ورق با استفاده از متد pop حذف میشود. این متد آخرین عنصر را حذف میکند و برمیگرداند. عملگر باقیمانده (%) به ما این اجازه را میدهد که کارتها را با نوبت گردشی توزیع کنیم (هـر کارت در هر نوبت به یک دست). هنگامی که i با تعداد دستهاي داخل لیست برابر مـیشـود، عبـارت nHands%i به ابتداي لیست (اندیس 0) میچرخد.

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

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

کیانا ابراهیمی سوال پاسخ داده شده اکتبر 15, 2020
گذاشتن نظر
شما در حال مشاهده 1 از 1 پاسخ هستید ، برای دیدن همه پاسخها اینجا را کلیک کنید .
پاسخ خود را بنویسید .
  • فعال
  • بازدیدها2006 times
  • پاسخ ها1 پاسخ
ورود به متاورس | متاورس ایرانی
ورود به متاورس ایران یا همان متاورس ملی

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

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

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