ویرگول
ورودثبت نام
کدتراپی | CodeTherapy
کدتراپی | CodeTherapy
خواندن ۳ دقیقه·۳ سال پیش

پایتون ۱۰ - رشته‌ها قسمت دوم

سلام. مثل همیشه اگه حوصله‌ی خوندن ندارین می‌تونین ویدئوی این قسمت رو از یوتیوب یا آپارات کدتراپی مشاهده کنین.

توی قسمت قبلی با رشته‌ها و انواع‌شون آشنا شدیم. حالا می‌خوایم یک سری فانکشن داخلی (built-in) پایتون رو برای رشته‌ها بررسی کنیم. رشته‌ی زیر رو در نظر بگیرین:

job_title = 'Software Engineer

گوشی موبایلتون رو در نظر بگیرین. یک سری دکمه دور گوشی وجود داره که هرکدوم وظیفه‌ی خاصی دارن. یکی صدا رو کم می‌کنه، یکی صفحه رو قفل می‌کنه و ... . یک سری فانکشن‌ها هم داخل زبان پایتون تعبیه شدن که هرکدوم وظیفه‌ی خاص خودشون رو دارن. برای استفاده از این فانکشن‌ها باید از () استفاده کنیم. حالا بعضی از این فانکشن‌ها یه سری ورودی به اسم آرگیومنت می‌‌‌‌‌‌گیرن که اونا رو داخل پرانتز می‌‌‌‌‌‌نویسیم.

طول یا ()len: به کمک اون می‌‌‌‌‌‌تونیم طول یک رشته رو بدست بیاریم.

print(len(job_title))

اگه برنامه رو ران کنیم توی خروجی طول رشته job_title که ۱۷ تاست رو نشون می‌‌‌‌‌‌ده.

حالا اگه بخوایم به یک کاراکتر خاص از یک رشته دسترسی داشته باشیم، از براکت یا [ ] استفاده می‌‌‌‌‌‌کنیم. مثل خیلی زبان‌های دیگه، در پایتون، رشته‌ها از صفر شروع می‌‌‌‌‌‌شن و اصطلاحا Zero Index هستن. یعنی برای گرفتن اولین کاراکتر یک رشته:

print(job_title[0]) >>> s

حالا مشابه بالا، می‌‌‌‌‌‌تونیم از یه ایندکس منفی استفاده کنیم، ولی چه معنی‌ای داره؟
 اگه ۰ اولین کاراکتر یک رشته باشه، ۱- آخرین کاراکتر رشته رو نشون می‌‌‌‌‌‌ده

print(job_title[-1]) >>> r

با یه سینتکس مشابه می‌‌‌‌‌‌تونیم رشته‌ها رو اصطلاحا برش! بزنیم. فرض کنید ۸ تا کاراکتر اول یک رشته رو می‌‌‌‌‌‌خوایم. توی این حالت داخل براکت دو تا مقدار قرار می‌‌‌‌‌‌گیره:
۱ - شماره‌ی جایی که رشته شروع می‌‌‌‌‌‌شه. برای این مثال ۰
۲ - شماره تا جایی که رشته ادامه داره برای این مثال ۸
و بین این دو تا ورودی با : قرار می‌‌‌‌‌‌گیره.

print(job_title[0:8]) >>> software

دقت کنین که برای متغیر دوم گفتیم تا اونجا. یعنی کاراکتر شماره‌ی ۸ حساب نمی‌‌‌‌‌‌شه و فقط کاراکترهای ۰ تا ۸ جدا می‌‌‌‌‌‌شن.
مثال بالا رو می‌‌‌‌‌‌تونیم به یه شکل دیگه هم بنویسیم. زمانی که بخوایم از اول رشته شروع کنیم و تا یه جایی از رشته رو جدا کنیم، می‌‌‌‌‌‌تونیم جای بخش اول رو خالی بذاریم:

print(job_title[:‌8]) >>> software

و مشابه بالا، اگه از یه جایی تا آخر رشته رو بخوایم جدا کنیم، می‌‌‌‌‌‌تونیم جای آخر رو خالی بذاریم:

print(job_title[9:]) >>> Engineer

پس هرجایی اول و آخر بود رو خالی می‌‌‌‌‌‌ذاریم. اگه بخوایم اول تا آخر رشته job_title رو نمایش بدیم:

print(job_title[:]) >>> Software Engineer

متد‌های String:

اگر بعد از job_title، یک نقطه بذاریم یک سری متدهای مربوط به رشته‌ها برامون نمایش داده می‌شه که می‌خوایم چندتا از پرکاربردهاشون رو باهم بررسی کنیم:
()upper
عبارت رو با حروف بزرگ بر می‌گردونه.
()lower
عبارت رو با حروف کوچیک بر می‌گردونه.
()title
حروف اول هرکلمه رو به حرف بزرگش تبدیل می‌کنه.
()strip
white space (شامل فاصله و تب) های قبل و بعد عبارت رو حذف می‌کنه و همی‌نطور می‌تونین از ()lstrip برای حذف از سمت چپ و ()rstrip برای حذف از سمت راست استفاده کنین.
()find
شماره‌ی ایندکس یک حرف و مجموعه‌ای از حروف رو نشون می‌ده. مثلا:

job_title.find('f') >>> 2

۲ رو برمی‌گردونه.

همونطور که قبل‌تر هم گفتیم،‌ پایتون به حروف کوچیک و بزرگ حساسه. اگه بجای f از F استفاده می‌کردیم، به نشانه‌ی اینکه توی متن وجود نداره ۱- برمی‌گردونه.
()replace
یک کاراکتر یا عبارت رو جایگزین چیز دیگه‌ای می‌کنه. مثال:

job_title.replace('soft', 'hard')

نکته: متدهای بالا هیچ تاثیری توی عبارت اصلی ندارن و یک عبارت جدید تولید می‌کنن که برای استفاده ازش می‌تونیم اونو توی یه متغیر جدید بریزیم.
نکته: اگه بخوایم وجود یک کاراکتر یا عبارت رو توی یه رشته بررسی کنیم،‌ از اوپراتور in استفاده می‌کنیم.

'soft' in job_title

که True بر می‌گردونه. همینطور اگر بخوایم موجود نبودن یک عبارت رو توی یک رشته بررسی کنیم، از not in استفاده می‌کنیم.

'hard' not in job_title

که بازم True برمی‌گردونه.

پایتون سعی کرده که به زبان انسان نزدیک باشه و همین ویژگی، یادگیری اون رو خیلی آسون‌تر کرده.
اگه متد جالب دیگه‌ای بنظرتون اومد خوشحال می‌شم توی بخش نظرات با من و بقیه به اشتراک بذارین.

pythonپایتونآموزش برنامه نویسیکدتراپیبرنامه نویسی پایتون
جایی برای گیک‌ها و برنامه‌نویس‌ها. اینجا سعی میکنیم بخندیم، یادبگیریم و آگاه‌تر شیم.
شاید از این پست‌ها خوشتان بیاید