چالش روزانه · ۲۲ مهر ۱۴۰۵

چالش پایتون ۵: برش رشته: مثبت و منفی

قبل از اجرای کد، خروجی آن را پیش‌بینی کن. حدس نزن؛ خط به خط فکر کن پایتون چه می‌کند.

name = "Hamrahe Aval"
print(name[8:], name[-4], name[:6])
خروجی کدام است؟

نمایش پاسخ و توضیح

پاسخ درست: گزینهٔ الف — Aval A Hamrah

اندیس‌ها

H  a  m  r  a  h  e     A  v  a  l
0  1  2  3  4  5  6  7  8  9  10 11
                        -4 -3 -2 -1

(خانهٔ ۷ فاصله است.)

  • name[8:] ← از خانهٔ ۸ تا آخر: Aval
  • name[-4] ← چهارمین کاراکتر از آخر: A
  • name[:6] ← از اول تا قبل از ۶ (خانه‌های ۰ تا ۵): Hamrah

جواب: Aval A Hamrah

دو قانون طلایی

  1. در برش [start:stop]، خانهٔ start هست ولی خانهٔ stop نیست.
  2. اندیس منفی از آخر می‌شمارد و -1 همیشه آخرین کاراکتر است.

حالا خودت اجرا کن و تغییرش بده

name = "Hamrahe Aval"
print(name[8:], name[-4], name[:6])