نحوه ساخت یک بازی مسابقه در پایتون (همراه با تصاویر)

فهرست مطالب:

نحوه ساخت یک بازی مسابقه در پایتون (همراه با تصاویر)
نحوه ساخت یک بازی مسابقه در پایتون (همراه با تصاویر)

تصویری: نحوه ساخت یک بازی مسابقه در پایتون (همراه با تصاویر)

تصویری: نحوه ساخت یک بازی مسابقه در پایتون (همراه با تصاویر)
تصویری: برنامه تایمر شمارش معکوس در پایتون ⌛ 2024, ممکن است
Anonim

اگر می خواهید پایتون را یاد بگیرید ، خوب است که از چند بازی ساده مبتنی بر متن شروع کنید. این مقاله نحوه ساخت یک بازی مسابقه را به شما نشان می دهد.

مراحل

947361 1
947361 1

مرحله 1. اگر قبلاً Python را نصب نکرده اید ، آن را نصب کنید

دو نسخه اصلی پایتون وجود دارد: پایتون 2 و پایتون 3. آنها قابل تعویض نیستند و پشتیبانی از پایتون 2 در سال 2020 به پایان می رسد ، بنابراین این مقاله فرض می کند که شما پایتون 3 را نصب می کنید.

947361 2
947361 2

مرحله 2. یک فایل جدید را در ویرایشگر متن یا Python IDE باز کنید

یک نام توصیفی بگذارید که با.py خاتمه می یابد.

947361 3
947361 3

مرحله 3. کتابخانه تصادفی را وارد کنید

برای تنظیم پاسخ های احتمالی به آن نیاز دارید.

947361 4
947361 4

مرحله 4. کلاس "QA" را تعریف کنید

"QA" شامل یک س questionال و یک پاسخ صحیح و لیستی از پاسخ های احتمالی دیگر است. تابع _init _ () هر زمان که یک شی QA جدید با تابع QA () ایجاد کنید ، فراخوانی می شود و آرگومان های آن به ویژگی مربوطه منتقل می شود. نوع:

کلاس QA: def _init _ (self، question، correctAnswer، otherAnswers): self.question = question self.corrAnsw = correctAnswer self.otherAnsw = otherAnswers

947361 5
947361 5

مرحله 5. لیستی از QA ها ایجاد کنید

به برخی از سوالات با یک پاسخ درست و برخی اشتباه فکر کنید. از هر یک اشیاء QA ایجاد کرده و آنها را در یک لیست قرار دهید. از آنجا که لیست کاملاً طولانی خواهد بود ، می توانید برای خوانایی بهتر آن را در چندین خط بشکنید. همه اینها با کد زیر انجام می شود (ممکن است متن شما متفاوت باشد):

qaList = [QA ("مینسک کجاست؟" ، "در بلاروس" ، ["در روسیه" ، "چنین شهری وجود ندارد"]) ، QA ("پایتخت استرالیا چیست؟" ، "کانبرا" ،

947361 6
947361 6

مرحله 6. متغیری را اضافه کنید که تعداد پاسخ های صحیح را بشمارد

در ابتدا آن را روی صفر قرار دهید. خط را اضافه کنید:

corrCount = 0

947361 7
947361 7

مرحله 7. لیست QA را به هم بزنید

این باعث می شود سوالات شما به ترتیب تصادفی ظاهر شوند. این کار با عملکرد زیر انجام می شود:

random.shuffle (qaList)

947361 8
947361 8

مرحله 8. یک حلقه ایجاد کنید

برنامه باید هر مورد از لیست را مرور کرده و کاری با آن انجام دهد. چنین حلقه ای با این عبارت ایجاد کنید:

برای qaItem در qaList:

947361 9
947361 9

مرحله 9. هر س Outال را پاسخ دهید

بعد از بیان حلقه ، خط را بنویسید:

چاپ (qaItem.question)

947361 10
947361 10

مرحله 10. همه پاسخهای ممکن را ارائه دهید

آنها باید به ترتیب تصادفی ظاهر شوند تا پاسخ صحیح همیشه در یک موقعیت نباشد. همچنین ، باید با یک عدد مقدمه شوند تا کاربر مجبور نباشد دوباره کل پاسخ را وارد کند. کد زیر این کار را می کند:

print ("پاسخ های احتمالی عبارتند از:") ممکن است = qaItem.otherAnsw + [qaItem.corrAnsw] # پرانتز مربع ، پاسخ صحیح را به لیست برای پیوند با لیست های دیگر تبدیل می کند random.shuffle (ممکن است) تعداد = 0 # فهرست فهرست ها از 0 در پایتون شروع می شود در حالی که شمارش <len (امکان پذیر است): print (str (count + 1) + ":" + possible [count]) count + = 1

947361 11
947361 11

مرحله 11. ورودی کاربر را بگیرید

ابتدا به کاربر بگویید که باید شماره خود را وارد کند. سپس ، بررسی کنید که آیا آنچه کاربر وارد کرده است واقعاً عددی است که با پاسخ مطابقت دارد. اگر اینطور نیست ، دوباره به کاربر اطلاع دهید. از این کد (خارج از حلقه while که برای خروجی ایجاد کرده اید) استفاده کنید:

print ("لطفاً شماره پاسخ خود را وارد کنید:") userAnsw = input () در حالی که userAnsw.isdigit () نیست: print ("این یک شماره نبود. لطفاً شماره پاسخ خود را وارد کنید:") userAnsw = input () userAnsw = int (userAnsw) در حالی که نیست (userAnsw> 0 و userAnsw <= len (ممکن است)): print ("این شماره با هیچ پاسخی مطابقت ندارد. لطفاً شماره پاسخ خود را وارد کنید:") userAnsw = ورودی ()

947361 12
947361 12

مرحله 12. بررسی کنید که آیا پاسخ کاربر صحیح بوده است یا خیر

برای انجام این کار ، متن پاسخ را که کاربر شماره ای برای آن وارد کرده است دریافت کنید و آن را با متن پاسخ صحیح مقایسه کنید. اگر آنها یکسان باشند ، پاسخ کاربر صحیح بود و متغیر corrCount باید 1 افزایش یابد. در غیر این صورت ، اشتباه است و باید پاسخ درست به کاربر گفته شود. در نهایت ، یک خط خالی چاپ کنید تا به سوال بعدی فضا اضافه کنید. کد زیر را وارد کنید:

در صورت امکان [userAnsw-1] == qaItem.corrAnsw: print ("پاسخ شما درست بود.") corrCount + = 1 else: print ("پاسخ شما اشتباه بود.") print ("پاسخ صحیح بود:" + qaItem. corrAnsw) چاپ ("")

947361 13
947361 13

مرحله 13. نتیجه گیری را ارائه دهید

در پایان ، احتمالاً کاربر می خواهد بداند چه تعداد سوال درست بوده است. بنابراین با افزودن عبارت زیر خارج از حلقه for به آنها بگویید:

print ("شما پاسخ" + str (corrCount) + "از" + str (len (qaList)) + "سوالات را به درستی")

947361 14
947361 14

مرحله 14. کد خود را بررسی کنید

توجه ویژه ای به تورفتگی داشته باشید. کد کامل شما باید به این شکل باشد:

وارد کردن کلاس تصادفی QA: def _init _ (self، question، correctAnswer، otherAnswers): self.question = question self.corrAnsw = correctAnswer self.otherAnsw = otherAnswers qaList = [QA ("مینسک کجاست؟" ، "در بلاروس" ، ["در روسیه" ، "چنین شهری وجود ندارد"]) ، QA ("پایتخت استرالیا چیست؟" ، "کانبرا" ، ["سیدنی" ، "نیویورک" ، "استرالیا وجود ندارد"]) ، QA ("کدام یک از موارد زیر روی زمین نیست؟" ، "دریای آرامش" ، ["دریای مدیترانه" ، "دریای بالتیک" ، "دریای شمال"]) ، QA ("کدام یک از موارد زیر نیست یک قاره؟ "،" قطب جنوب "، [" قطب جنوب "،" آمریکا "]) ، QA (" کدام یک از کشورهای زیر یک کشور آفریقایی نیست؟ "،" مالزی "، [" ماداگاسکار "،" جیبوتی "،" جنوب آفریقا "،" زیمبابوه "])] corrCount = 0 random.shuffle (qaList) برای qaItem در qaList: print (qaItem.question) print (" پاسخ های احتمالی عبارتند از: ") ممکن = qaItem.otherAnsw + [qaItem.corrAnsw] # پرانتز مربع پاسخ صحیح را به لیست برای اتصال با لیست های دیگر تبدیل می کند تصادفی. shuffle (ممکن است) تعداد = 0 # فهرست فهرست ها از 0 i شروع می شود n python while count <len (possible): print (str (count + 1) + ":" + possible [count]) count + = 1 print ("لطفاً شماره پاسخ خود را وارد کنید:") userAnsw = input () while not userAnsw.isdigit (): print ("این یک عدد نبود. لطفاً شماره پاسخ خود را وارد کنید: ") userAnsw = input () userAnsw = int (userAnsw) در حالی که نه (userAnsw> 0 و userAnsw <= len (ممکن است)): print (" این شماره با هیچ پاسخی مطابقت ندارد لطفاً شماره پاسخ خود را وارد کنید: ") userAnsw = input () در صورت امکان [userAnsw-1] == qaItem.corrAnsw: print (" پاسخ شما درست بود. ") corrCount += 1 دیگری: print (" پاسخ شما بود اشتباه است. ") print (" پاسخ صحیح این بود: " + qaItem.corrAnsw) print (" ") print (" شما به " + str (corrCount) +" از " + str (len (qaList)) +" سوالات به درستی پاسخ دادید. ")

947361 15
947361 15

مرحله 15. کد را اجرا کنید

اگر از IDE استفاده می کنید ، روی نماد "اجرا" یا مورد منو کلیک کنید. اگر از ویرایشگر متن استفاده می کنید ، برنامه خود را ذخیره کنید ، ویرایشگر را ببندید و برنامه خود را با پایتون باز کنید.

نکات

  • مراقب تورفتگی صحیح باشید. کد داخل یک تابع یا تعریف کلاس ، مانند کد داخل یک حلقه ، تورفتگی دارد. یک برنامه پایتون با تورفتن اشتباه کار نمی کند.
  • اگر می خواهید بازی را قطع کنید و آن را تمام نکنید ، Ctrl+C را فشار دهید.
  • اگر هر فراخوانی ورودی () را با فراخوانی raw_input () جایگزین کنید ، این برنامه در پایتون 2 کار می کند ، اما در پایتون 3 کار را متوقف می کند.

توصیه شده: