پاسخ به سوالات دانش آموزان(پایتون)
پاسخ به سوال شماره 1:
شمارش درون لیست ها میخواهم بدونم ترتیب شمارش و اولویت به چه صورت بوده که جواب این شده ؟
در این کد:
b = ‘hello, world!’
print(b[-5:-2])
– b = ‘hello, world!’ یک رشته متنی تعریف میکنه که شامل عبارت ‘hello, world!’ است.
– b[-5:-2] داره یه تکه از این رشته رو برمیداره که از اندیسهای منفی استفاده میکنه.
اندیس منفی به این معنیه که شمردن از آخر رشته شروع میشه
b[-1] آخرین کاراکتر یعنی !
b[-2] دومین کاراکتر از آخر یعنی d
b[-5] پنجمین کاراکتر از آخر یعنی o
حالا با استفاده از این اندیسها، b[-5:-2] یعنی:
شروع از اندیس -5 (کاراکتر o)
تا اندیس -2 (اما -2 شامل نمیشه، یعنی تا r میره و d رو بر نمیداره).
بنابراین خروجی میشه:
orl
نحوه شماره گذاری اندیس منفی
پاسخ به سوال شماره 15 کتاب صفحه 163
جواب درست گزینه ج هستش
بستهبندی تاپل رو ایجاد میکنه و بازبندی اعضا را به متغیرها اختصاص میده بستهبندی (packing) یعنی وقتی چند مقدار داریم و اونها رو توی یه تاپل قرار میدیم. در واقع این عمل باعث ایجاد تاپل میشه. مثل وقتی که چند مقدار رو داخل پرانتز یا حتی بدون پرانتز مینویسیم، پایتون خودش اونها رو توی یه تاپل میریزه.
مثال:
my_tuple = 1, 2, 3
اینجا سه عدد رو توی یه تاپل بستهبندی کردیم.
بازبندی (unpacking) یعنی وقتی یه تاپل داریم و میخوایم اعضای داخلش رو به متغیرهای جداگانه تخصیص بدیم. در واقع بازبندی اون تاپل رو باز میکنه و مقادیرش رو به چند متغیر جدا میده.
– مثال:
a, b, c = my_tuple
اینجا مقادیر تاپل رو بازبندی کردیم و هر کدوم رو به یه متغیر دادیم.
چرا گزینههای دیگه غلطه؟
گزینه الف: میگه بازبندی در ایجاد تاپل نقش نداره. این درسته، اما کامل نیست! فقط میگه بازبندی چه کاری انجام نمیده، ولی توضیح نمیده که بستهبندی چطور باعث ایجاد تاپل میشه.
گزینه ب: میگه بستهبندی در ایجاد تاپل نقش نداره، که اشتباهه. بستهبندی دقیقاً همون چیزیه که باعث ایجاد تاپل میشه.
بنابراین گزینه ج درست و کامل توضیح داده که بستهبندی تاپل رو میسازه و بازبندی مقادیرش رو به متغیرها اختصاص میده.
دیدگاه ها