فهرست عناوین

موضوع قبلی

4. روزنامه

موضوع بعدی

6. Increment

5. جهان

توجه

از آن‌جا که ()World تابع خیلی خاصّی است، تصمیم گرفتم از قرارداردی معمول پایتون پیروی نکنم و نام آن را با حرف بزرگ شروع کنم.

یک محیط به جز خانه‌ ۱ انتخاب کنید. سپس این برنامه را دو بار اجرا کنید:

World("Home 1")
move()
move()

بار نخست که اجرا کردید، حتماً دیدید که ریبرگ به شما اطّلاع می‌دهد که محیط به خانه ۱ تغییر کرده که می‌توانید با نگاه کردن به محیط از درستی این مورد مطمئن شوید.

بار دوم که اجرا کنید، چون محیط خانه‌ ۱ از قبل انتخاب شده؛ تابع ()World نادیده گرفته و باقی برنامه اجرا می‌شود.

5.1. تمرین برنامه‌نویسی

پیش از این که بخواهم بیشتر دربارهٔ ()World بگویم؛ می‌خواهم برنامه‌ای را که حتماً قبلاً نوشته‌اید را بازبینی کنید.

این کار را انجامش بده! مهمّه!

محیط پس از طوفان ۱ را انتخاب کنید. برنامه‌ای بنویسید که کاری کند که ریبرگ همهٔ برگ‌ها را جمع کند و آن‌ها را درون سطل بازیافت بریزد. برنامهٔ شما به احتمال زیاد نیاز به استفاده از ()carries_object را دارد.

5.2. بارگزاری یک محیط از راه دور

به محیط پس از طوفان ۱ به دقّت نگاه کنید و جای برگ‌ها یادداشت کنید.

حالا، بالای برنامه‌ای -که برای ریبرگ برای جمع کردن برگ‌ها نوشتید در محیط پس از طوفان ۱ نوشتید-این خط کد را اضافه کنید:

World("http://reeborg.ca/worlds/not_storm1.json")

‫[توجّه کنید که آخر not_storm1 شمارهٔ «۱» هست نه حرف کوچک انگلیسی «L».] برنامه را یک بار اجرا کنید: ریبرگ باید به شما بگوید که محیط به درستی بارگزاری شده. ظاهرش باید درست مثل قبل باشد.

دقّت کنید که در انتخاب‌گر محیط در بالای دنیای ریبرگ نام محیط یک اسم خیلی طولانی است که ما آن را به عنوان نشانوند تابع ()World استفاده کردیم.

روی کلید «اطّلاعات محیط» (World info) در بالای محیط ریبرگ کلیک کنید. توضیح کوتاهی از محیط می‌بینید که شامل این موضوع می‌شود که قرار نیست از ()carries_object استفاده کنید. بی خیال آن بشوید و برنامهٔتان را اجرا کنید. دقّت کنید که چه اتّفاقی می‌افتد.

5.3. باز هم بارگزاری یک محیط از راه دور

خب، برنامهٔتان کار نکرد. کمی بعد‌تر می‌بینیم چطور این ایراد را درست کنیم. فعلاً از شما می‌خواهم چیز دیگری را امتحان کیند. خط اوّل برنامه را مثل این تغییر دهید:

World("http://reeborg.ca/worlds/not_storm1.json",
      "Not Storm 1")

به تابع ()World یک نشانوند دیگر اضافه کردم. برای جلوگیری از طولانی شدن سطر -که ممکن بود در صفحه جا نشود- همهٔ نشانوند دوم را یک‌جا در سطر بعدی ویرایش‌گر کد نوشتم. وقتی پایتون کمانک باز ( را برای نشانوند تابع می‌بیند؛ به خواندن سطر بعد هم ادامه می‌دهد تا کمانک بسته ) را هم پیدا کند. طوری رفتار می‌کند که انگار همهٔ این چیزها در یک سطر بوده‌اند. با این همه، توجّه کنید که رشته‌متن‌ها را تکّه نکردم. فقط بعد از چیزهایی را که بعد از کاما می‌آمدند را به یک سطر دیگر بردم تا هر نشانوند در سطر خاصّ خودش باشد. (مترجم: این کار می‌تواند به خوانایی بهتر و رفع اشکال کد کمک کند).

حالا این یکی را اجرا کنید، باز هم این کارمان را حل نمی‌کند. با این وجود، اگر به بالای محیط نگاه کنید؛ این بار به جای نشانی طولانی قبلی؛ نامی که برای محیط ظاهر می‌شود Not Storm 1 است.

5.4. کارتان را ذخیره کنید

شاید دلتان بخواهد با کلیک روی دکمهٔ «گزینه‌های بیشتر» (Additional options) و بعد روی «ذخیرهٔ برنامه در فایل» (Save program to file) برنامهٔتان را ذخیره کنید. بعداً می‌توانید آن را با کلیک روی «بار کردن فایل برنامه» ( Import program from file) آن را بازیابی کنید.