اجرای بازی سنگ، کاغذ، قیچی در پایتون
در این بخش قرار است بازی سنگ، کاغذ، قیچی را در پایتون با 25 خط بنویسیم.
ابتدا برای شروع بازی باید یکی از حروف R، P و S را در داخل کادر زیر بنویسیم. در اینجا ابتدا حرف R را که ابتدای کلمه Rock است، در داخل کادر مینویسیم.
با توجه به تصویر زیر، انتخاب کاربر با توجه به حرفی که در ابتدا وارد کرده است R و انتخاب برنامه نیز R میباشد. بنابراین برنامه این بازی را برابر اعلام میکند. این روند را دوباره نیز میتوان با وارد کردن یک حرف دیگر ادامه دهیم.
برای ایجاد این بازی نیاز به کتابخانه random داریم که این کتابخانه را با دستور import وارد میکنیم. از این کتابخانه برای به دست آوردن انتخاب اتفاقی کامپیوتر جهت انتخاب سنگ یا کاغذ یا قیچی استفاده میشود.
چگونه شروع کنیم
در اینجا یک حلقه True داریم که تا زمانی که در این حلقه قرار داریم و برنامه اجرا میشود، میتوان بازی کرد. خط اول در داخل این حلقه \n را print میکنیم. با این دستور یک خط پایینتر میآیم. سپس عبارت شروع بازی سنگ، کاغذ، قیچی را print میکنیم. از طریق تابع input به کاربر اجازه انتخاب بین گزینههای Paper, Rock و Scissors را میدهیم.
هنگامی که انتخاب کاربر تایید شد آن را در داخل یک متغییر ذخیره میکنیم. سپس این متغییر را بررسی میکنیم که آیا این متغییر در داخل لیستی از حروف مدنظر قرار دارد یا خیر. حرفی که کاربر وارد میکند باید یا R بزرگ یا r کوچک، P بزرگ یا p کوچک و S بزرگ یا s کوچک باشد. اگر کاربر حرفی به غیر از این موارد وارد کند یعنی قوانین بازی را رعایت نکرده است. بنابراین عبارت انتخاب دوباره بین گزینهها را print میکنیم.
در خط بعدی عبارت continue به این معنی میباشد که اگر کابر یک حرف به غیر از حروف مدنظر در داخل لیست وارد کرد، باقی کد را ادامه ندهد و دوباره به ابتدای حلقه بازگردد. در این بازی اگر متغییر حرف مورد نظر را درست انتخاب کرد ادامه کد اجرا میشود و انتخاب کاربر print میشود.
در ادامه نوبت به انتخاب کامپیوتر از میان حروف مد نظر میرسد. لیستی از این حروف درست میکنیم و برابر با نام choices قرار میدهیم. در این قسمت برای انتخاب تصادفی کامپیوتر از کتابخانه random تابع choice را فراخوانی میکنیم. در این حالت از میان حروف موجود در لیست choices یک حرف به صورت رندم انتخاب میشود.
انتخاب برنده
حال برای بررسی اینکه انتخاب کاربر با انتخاب کامپیوتر برابر است یا نه از عبارت if, elif و else استفاده میکنیم. از آنجایی که کاربر در این بازی ممکن است انتخاب خود را با حروف کوچک بنویسد. با استفاده از متد upper آن را تبدیل به حروف بزرگ میکنیم. در قسمت if بررسی میشود که اگر انتخاب کاربر و کامپیوتر با هم برابر باشد عبارت Tie را print کند.
در قسمت elif بررسی میشود که اگر انتخاب کامپیوتر “R” باشد و انتخاب کابر به صورت upper شده برابر با “S” باشد، کامپیوتر برده است. بنابراین عبارت “I win” را print میکنیم. سپس عبارت continue که در ادامه وجود دارد به این معنی میباشد که دیگر برنامه ادامه پیدا نکند و به اول حلقه برود.
اگر انتخاب کامپیوتر “S” باشد و انتخاب کابر به صورت upper شده برابر با “P” باشد، کامپیوتر برده است. بنابراین عبارت “I win” را print میکنیم. سپس عبارت continue که در ادامه وجود دارد به این معنی میباشد که دیگر برنامه ادامه پیدا نکند و به اول حلقه برود.
اگر انتخاب کامپیوتر “P” باشد و انتخاب کابر به صورت upper شده برابر با “R” باشد، کامپیوتر برده است. بنابراین عبارت “I win” را print میکنیم. سپس عبارت continue که در ادامه وجود دارد به این معنی میباشد که دیگر برنامه ادامه پیدا نکند و به اول حلقه برود.
در قسمت else بررسی میشود که اگر تمام شروط بالا برقرار نبود، یعنی کاربر در این بازی برده است پس عبارت “You win” را print میکنیم.
در تصویر زیر کد بازی سنگ، کاغذ، قیچی را می توانید بررسی کنید. و با توجه به توضیحات بالا این کد را پیاده سازی کنید.
برای آشنایی بیشتر با پایتون و نحوه کار با آن میتوانید به دوره جامع آموزش زبان برنامهنویسی پایتون آکادمی رسا مراجعه کنید.