مرکزی مواد پر جائیں
ماڈیول 4 · سبق 2 از 4کورس میں 14/36~10 min
ماڈیول اسباق (2/4)

سلائسنگ اور انڈیکسنگ

ازگر میں، تار حروف کی ترتیب ہیں: آپ رسائی حاصل کرسکتے ہیں۔ انڈیکس کے لحاظ سے انفرادی حروف بنائیں اور سلائس کے ساتھ ذیلی تاریں بنائیں نحو [start:stop:step] — بالکل اسی طرح جیسے فہرستوں کے ساتھ۔

مثبت اور منفی اشاریے۔

Python
s = "Python"
#    0123456
#   -6-5-4-3-2-1
s[0]    # 'P'
s[5]    # 'n'
s[-1]   # 'n'   (ultimo)
s[-2]   # 'o'   (penultimo)

حد سے باہر رسائی IndexError کو بڑھاتی ہے۔

سلائسنگ [start:stop:step]

Python
s = "Python"
s[0:3]    # 'Pyt'      indici 0,1,2 (stop ESCLUSO)
s[2:]     # 'thon'     dal 2 alla fine
s[:3]     # 'Pyt'      dall'inizio fino al 3 (escluso)
s[:]      # 'Python'   copia completa
s[-3:]    # 'hon'      ultimi 3
s[:-2]    # 'Pyth'     tutto tranne gli ultimi 2

اشاریہ سازی کے برعکس، اگر اشاریہ جات ختم ہو جائیں تو ٹکرے کرنے سے غلطی نہیں ہوتی رینج کا: یہ جو کچھ کر سکتا ہے اسے تراشتا ہے۔

تیسری دلیل: step

Python
s = "Python"
s[::2]    # 'Pto'    salta uno sì uno no
s[1::2]   # 'yhn'    dispari
s[::-1]   # 'nohtyP' INVERSIONE (idiom famoso)

s[::-1] سٹرنگ کو ریورس کرنے کا محاوراتی طریقہ ہے۔

لمبائی اور روک تھام

Python
len("Python")        # 6
"th" in "Python"     # True
"java" in "Python"   # False

منفی اشاریہ جات اور سلائسنگ میں قدم

سلائسنگ کا مکمل نحو s[start:stop:step] ہے۔ اگر آپ start اور stop کو چھوڑ دیتے ہیں لیکن ایک منفی step کو -1 (s[::-1]) سیٹ کرتے ہیں، تو آپ اسٹرنگ کو الٹ دیتے ہیں۔ منفی انڈیکس -1 ہمیشہ سٹرنگ کے آخری حرف کی نمائندگی کرتا ہے، -2 دوسرے سے آخری ہے، وغیرہ۔

اسے آزمائیں

ورزش#python.m4.l2.e1
کوششیں: 0لوڈ ہو رہا ہے…

دیا ` لفظ = 'پروگراممازیون'، اس کے الٹ کو ` ریورسڈ_ورڈ` میں حاصل کریں۔ معکوس_لفظ کا اندازہ کریں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

لفظ [::-1]

3 کوششوں کے بعد حل دستیاب ہے۔

ورزش کا جائزہ لیں۔

ورزش#python.m4.l2.e2
کوششیں: 0لوڈ ہو رہا ہے…

`email = 'ada@example.com'` کو دیکھتے ہوئے، .find کے ساتھ انڈیکس تلاش کرنے کے بعد سلائسنگ کا استعمال کرتے ہوئے ڈومین ('@' کے بعد ہر چیز) کو `ڈومین` میں نکالیں۔ `ڈومین` کا اندازہ کریں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

ای میل[email.find('@') + 1:]

3 کوششوں کے بعد حل دستیاب ہے۔

اضافی چیلنج

ورزش#python.m4.l2.e3
کوششیں: 0لوڈ ہو رہا ہے…

سٹرنگ \`word = "pythonista"\` کو دیکھتے ہوئے، پہلے 3 حروف اور آخری 3 حروف کو نکالنے کے لیے سلائسنگ کا استعمال کریں، اور انہیں ایک نئی سٹرنگ \`short_word\` میں جوڑیں۔ آخر میں، \`short_word\` کا اندازہ لگائیں (اس سے \`'pytsta'\` نکلنا چاہیے)۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

The first 3 characters are word[:3], the last 3 are word[-3:]. Concatenate the two slices.

3 کوششوں کے بعد حل دستیاب ہے۔