پاسخ سوال چیسون؟ کوئرا
در این نوشته تمرین “چیسون؟” که در وبسایت کوئرا موجود است را برای شما کاربران عزیز حل کردهایم.
پاسخ سوال چیسون؟ کوئرا
در این سوال میخواهیم دو دستور ساده از یک زبان برنامه نویسی را شبیهسازی کنیم. دستور اول، دستور =: است. در سمت چپ این دستور اسم متغیر و در سمت راست آن مقداری که میخواهیم به متغیر بدهیم میآید. اسم متغیر یک رشته از حروف کوچک انگلیسی با حدکثر 20 حرف است. مقدار متغیر میتواند به یکی از دو حالت زیر شود.
- یک لیست از اعداد باشد. شکل لیست این صورت است:
[a_1, a_2, …, a_n]
هر عضو یک عدد حداکثر تا 100 است و بین هر کاراکتر , و عدد بعدی یک فاصله وجود دارد. و بین بقیه حرفا فاصلهای وجود ندارد. لیست حداکثر 20 عضو دارد.
- یک لغتنامه از رشتههای عددی به اعداد است. شکل لغتنامه به این صورت است:
{“k_1”: v_1, “k_2”: v_2, … “k_n”: v_n}
مقدار هر کلید (k_i) و هر مقدار (v_i) یک عدد حداکثر تا 100 است. بعد هر حرف : و حرف , یک فاصله وجود دارد و جایی دیگری فاصله وجود ندارد. لغتنامه حداکثر شامل 20 جفت میشود و همهی مقدارهای کلیدها متمایزند. دستور دوم، دستور print است. دستور متغیر به شکل مقابل استفاده میشود:
print var[id]
بین دستور print و کلمه var یک فاصله وجود دارد و var نام متغیر و id اگر متغیر لیست شود اندیس خانهایست که باید چاپ شود و اگر متغیر لغتنامه باشد کلید مقداریست که باید چاپ شود. تضمین میشود متغیر داده شده قبلا مقداردهی شده است. به شما یک برنامه که با دستورات توضیح داده نوشته شده، داده میشود. آن را اجرا کنید و خروجی را چاپ کنید.
ورودی سوال چیسون؟
در خط اول n آمده که تعداد خطوط برنامه است و در ادامه یک برنامه n خطی آمده است.
خروجی سوال چیسون؟
خروجی برنامه را چاپ کنید.
حل سوال چیسون؟
import json
n = int(input())
l = {}
for i in range(n):
s = input()
if s.startswith("print"):
nameidx = s.split(" ")[1].split("[")
if nameidx[1][:-1].startswith("\""):
print(l[nameidx[0]][nameidx[1][1:-2]])
else:
print(l[nameidx[0]][int(nameidx[1][:-1])])
elif s.split(" ")[1] == ':=':
l.update({s.split(" ")[0]: json.loads(s[len(s.split(" ")[0])+4:])})
منبع سوال: وبسایت کوئرا
اگر روش حل بهتری برای “تمرین چیسون؟” دارید برای ما ارسال کنید تا با نام خودتان به اشتراک بگذاریم. اگر سوال خاصی را مدنظر دارید در بخش نظرات برای ما ارسال کنید تا حل آن سوال را در الویت محتوای سایت بگذاریم.



















مرسی، کدت رو تست کردم و همه نمونه تستهای کوئرا رو درست جواب داد
موفق باشین
من این تمرینو خیلی دوست داشتم
موفق باشین
استفاده از json.loads خیلی باهوشانهست
موفق باشین
خیلی خوب توضیح دادی
موفق باشین
سلام ممنون از سایت خوبتون. اگر میشه لطفا سوال جوس و رشته تو رشته کوئرا را نیز بررسی کنید.
متشکریم – لطفا لینک سوال را برای ما ایمیل کنید تا در فهرست برنامه ی محتوایی ما قرار بگیرد