یک تابع بسازید که عرض، ارتفاع و کاراکتر را به عنوان ورودی بگیرد و یک قاب عکس را به صورت یک لیست دو بعدی بازگرداند.
مثال
get_frame(10, 3, "*") ➞ [
["**********"],
["* *"],
["**********"]
]
# قاب 10 کاراکتر عرض و 3 کاراکتر ارتفاع دارد.
نمونه ورودی و خروجی
get_frame(4, 5, "#") ➞ [["####"], ["# #"], ["# #"], ["# #"], ["####"]]
get_frame(10, 3, "*") ➞ [["**********"], ["* *"], ["**********"]]
get_frame(2, 5, "0") ➞ "invalid"
نکات
- به فاصله خالی داخل قاب توجه کنید.
- اگر عرض یا ارتفاع 2 یا کمتر باشد (نمیتوان چیزی داخل قرار داد)،
"invalid"
را برگردانید.
self.assertEqual(get_frame(4, 5, "#"), [["####"], ["# #"], ["# #"], ["# #"], ["####"]]) self.assertEqual(get_frame(10, 3, "*"), [["**********"], ["* *"], ["**********"]]) self.assertEqual(get_frame(2, 5, "0"), "invalid") self.assertEqual(get_frame(3, 3, "0"), [["000"], ["0 0"], ["000"]])) self.assertEqual(get_frame(5, 9, "Z"), [["ZZZZZ"], ["Z Z"], ["Z Z"], ["Z Z"], ["Z Z"], ["Z Z"], ["Z Z"], ["Z Z"], ["ZZZZZ"]]) self.assertEqual(get_frame(3, 3, "^"), [["^^^"], ["^ ^"], ["^^^"]])
پاسخ های کاربران به این تمرین
برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید
نظرات