آموزش پایتون

آشنایی کامل با رشته ها در پایتون

بررسی کامل رشته ها [ Strings ] در پایتون

آشنایی با رشته ها در پایتون. آشنایی با رشته ها در پایتون

لیترال های رشته ای

برای آشنایی با رشته ها در پایتون با گیسوم طرح همراه باشید.

لیترال های رشته ای در پایتون بین دو علامت کوتیشن تکی یا دابل کوتیشن قرار می گیرند.

برای مثال ‘Gisoomtarh.com’ دقیقا برابر “Gisoomtarh.com” است.

شما میتوانید یک لیترال رشته ای را با تابع ()print نمایش دهید.

خروجی کد بالا :

اختصاص مقادیر رشته ای به متغیرها

برای اختصاص یک لیترال رشته ای به یک متغیر ابتدا یک نام را برای متغیر در نظر گرفته و با یک علامت مساوی و اختصاص مقداری رشته ای ذر داخل تک کوتیشن یا دابل کوتیشن آن را ساخت.

خروجی کد بالا:

لیترال های رشته ای چندخطی

در پایتون می توانید یک لیترال رشته ای چند خطی را با استفاده از کوتیشن سه تایی به یک متغیر اختصاص داد.

خروجی کد بالا:

توجه: برای اختصاص یک لیترال رشته ای همچنین می توانید رشته را داخل تک کوتیشن های سه تایی (”’) قرار داد.

رشته ها به عنوان آرایه

مانند بسیاری از زبانهای برنامه نویسی محبوب دیگر ، رشته ها در پایتون بعنوان آرایه ای از بایت ها برای نمایش کارکترهای یونیکد عمل می کنند.

اگر چه پایتون دیتا تایپ خاصی برای کاراکترها ندارد ولی بطور کلی یک کاراکتر تکی یک رشته ساده با طول 1 تلقی می گردد.

در یک رشته هر کاراکتر نسبت به جایی که قرار گرفته یک شماره که در برنامه نویسی از آن بعنوان Index یا اندیس یاد می شود را به خود اختصاص می دهد.

ایندکس گذاری از 0 شروع می شود و عدد انتهایی به طول رشته بستگی دارد.

برای اینکه بفهمیم یک رشته چند کاراکتر دارد میتوان از تابع ()len استفاده کرد.

درپایتون برای دسترسی به عناصر یک رشته میتوان از کروشه یا براکت مربعی [ ] استفاده کرد.

در مثال زیر کاراکتر دوم رشته را با استفاده از تعاریف بالا و با تابع پرینت چاپ می کنیم.

باید توجه داشت شماره گذاری کارکترها از عدد 0 شروع میشود . یعنی اولین کاراکتر با صفر نمایش داده می شود در نتیجه برای نشان دادن کاراکتر دوم باید شماره آن یعنی عدد 1 را در کد قرار دهیم.

خروجی :

ایجاد برش در رشته ها با ایندکس گذاری

پایتون این امکان را به ما می دهد تا با ایندکس گذاری بخشی از کاراکترهای یک رشته را از کل رشته جدا کرده و مقدار آن را برگردانیم.

برای اینکار باید شماره ایندکس شروع و پایان را مشخص کنید . این دو ایندکس با یک علامت   :    از هم جدا می شوند.

خروجی کد بالا :

در مثال بالا عملیات برش از ایندکس شماره 3 که همان کارکتر چهارم می باشد (دلیل آن شروع شماره گذاری کاراکترها از عدد 0 است) شروع شده و در ایندکس شماره 7 که در واقع کاراکتر هشتم می باشد به پایان می رسد.

ایندکس گذاری معکوس

در این روش با استفاده از علامت – (منفی) عملیات ایندکس گذاری به حالت معکوس و از انتهای رشته اجرا می شود.

به مثال زیر توجه کنید :

خروجی کد بالا :

مشخص کردن طول رشته با تابع ()len

برای دریافت طول یک رشته (تعداد کاراکترهای رشته) از تابع ()len استفاده می شود.

خروجی کد بالا :

طول رشته ریخته شده در متغیر domain برابر با 14 کاراکتر است.

متودهای رشته [String Methods]

پایتون دارای مجموعه ای از متودهای داخلی می باشد که می توان از آنها برای استفاده در رشته ها استفاده کرد.

هر یک از این متودها عملیات خاصی بر روی رشته ها انجام می دهند. دز ادامه به بررسی این متودها و نحوه استفاده از آنها اشاره شده است.

متود ()strip:

این متود هر گونه فضای خالی یا سفید را از ابتدا و انتهای یک رشته حذف میکند. به مثال زیر دقت کنید.

خروجی کد بالا :

در مثال بالا فضای خالی ابتدا و انتهای رشته توسط متود ()strip حذف شده و تابع پرینت باقی رشته را برمی گرداند.

متود ()lower:

این متود تمام کاراکترهای رشته را با فرمت حروف کوچک یا Lower Case تبدیل می کند. برای مثال حرف G تبدیل به حرف g می شود.

نتیجه اجرای کد بالا :

متود ()upper:

این متود دقیقا برعکس متود lower عمل می کند و کاراکترهای رشته را به حروف بزرگ تبدیل می کند.

خروجی:

متود ()replace:

این متود قسمت یا تمام یک رشته را با رشته ای دیگر جایگزین می کند. این جایگزینی میتواند شامل یک کاراکتر یا بیشتر باشد. مثال زیر چگونگی کارکرد این متود را نشان می دهد.

در خروجی کد بالا قسمت tarh با TARH جایگزین شده است.

یک مثال دیگر:

خروجی:

متود ()split:

این متود می تواند یک رشته را به رشته های کوچکتر تقسیم کند . به بیان ساده تر این تابع با شکستن رشته آن را به رشته های مجزای ذیگر تبدیل می کند.

همچنین این متود یک کاراکتر جدا کننده را به عنوان ورودی دریافت می کند و رشته را براساس وچود آن جدا کننده به رشته های کوچک تبدیل می کتد.

به مثال توجه کنید.

خروجی:

در خروجی می بینید که می توان از هر نوع جدا کننده ای برای اینکار استفاده کرد ولی باید حتما نوع آن را در ورودی تابع split مشخص کرد.

پیشنهاد می شود از جدا کننده های معمول مانند (,) یا (/) و یا (\) برای اینکار استفاده کنید. اینکار به خوانایی کدهای نوشته شده کمک می کند.

بررسی در رشته ها

در پایتون برای بررسی اینکه یک عبارت یا کاراکتر خاص در یک رشته وجود دارد از کلیدواژه های in و not in استفاده می شود.

در مثال زیر بررسی می کنیم که آیا عبارت gisoomtarh در رشته مربوطه وجود دارد یا نه:

خروجی:

در مثال زیر با استفاده از کلیدواژه های not in بررسی میکنیم که آیا عبارت website در رشته مربوطه وجود دارد یا خیر .

در مثال بالا موجود نبودن عبارت website در رشته مربوطه بررسی می شود. و چون این عبارت در رشته موجود هست مقدار False در خروجی برگردانده می شود.

الحاق رشته ها در پایتون

در پایتون برای الحاق یا ترکیب دو یا چند رشته از عملگر + استفاده می شود.

در مثال زیر مقدار دو متغیر a و b  در متغیر c با هم ترکیب شده اند.

خروجی :

برای ایجاد فاصله بین رشته ها از ” “ (کوتیشن با فضای خالی) استفاده می شود.

به مثال زیر زیر توجه کنید.

خروجی :

ترکیب رشته ها و اعداد در پایتون با [ متود ()Format ]

همانطور که در آموزش متغیرها در پایتون یاد گرفتیم ، در پایتون نمی توان بصورت مستقیم رشته ها و اعداد را با هم ترکیب کرد.

زیرا علامت + بعنوان عنصر محاسباتی عمل کرده در نتیجه در هنگام استفاده از آن برای ترکیب رشته ها و اعداد خطا بروز می کند.

به مثال زیر توجه کنید.

نتیجه اجرای این کد ایجاد خطای TypeError :

برای اینکه با این خطا روبرو نشویم باید از متو ()format استفاده کنیم.

متود ()format آرگومان های داده شده را میگیرد ، فرمت می کند و بعد آنها را در رشته درست در جایی که {} یا placeholder  قرار دارد می ریزد.

به مثال زیر توجه کنید.

خروجی کد بالا:

همانطور که می بینید متود format به سادگی نوع داده متغیر tavalod را به رشته تبدیل می کند و مقدار آن را در placeholder می ریزد .

در نتیجه خروجی کد بدون ایجاد خطا توسط تابع پرینت چاپ می شود.

توجه : متود ()format محدودیتی برای گرفتن آرگومان ها ندارد . یعنی می توان به هر تعدادی برای آن آرگومان در نظر گرفت. و بعد آرگومان ها را به placeholder های مربوطه معرفی کرد.

به مثال زیر توجه کنید :

خروجی کد بالا:

در مثال بالا متود format مقادیر متغیر های سال ، ماه و روز را به ترتیب در آرگومان های ورودی خود می گیرد. و آنها را به ترتیب در پلیس هولدرهای مربوطه می ریزد.

اولویت انتخاب هر پلیس هولدر به محل قرار گیری آن در رشته بستگی دارد.

مثلا پلیس هولدر اولی مقدار آرگومان sal را در خود جای می دهد. در واقع مقدار آرگومان اول در پلیس هولدر اول ، دوم در دوم  و سوم در پلیس هولدر سوم ریخته می شود.

همچنین می توان از شماره ایندکس یا اندیس برای اطمینان از اینکه مقدار هر آرگومان در placeholder درست ریخته می شود استفاده کرد.

مثال زیر چگونگی استفاده از شماره ایندکس برای معین کردن اینکه مقدار کدام آرگومان در کدام placeholder ریخته شود را نشان می دهد.

خروجی کد بالا :

کاراکترهای فرار در پایتون

گاهی اوقات پیش می آید که لازم است از بعضی علامت ها در یک رشته استفاده کنیم .

مانند علامت کوتیشن یا نقل قول برای اینکه مطلبی را از جایی نقل کنیم یا  . اما استفاده از این علامت یا علامت های دیگر باعث ایجاد خطای نحوی در پایتون می شود.

برای اینکه هم بتوانیم از این کاراکترها در رشته استفاده کنیم. و هم با خطای نحوی مواجه نشویم باید از یک سری کاراکترها یا علائم بعنوان کاراکترهای فرار استفاده کنیم.

در واقع کاری که کارکتر فرار انجام می دهد این است که بخش غیر قانونی را به عنوان قسمتی از رشته معرفی می کند و مفسر پایتون با رسیدن به آن آن را قسمتی از کد شناسایی نمی کند.

کارکتر فرار یک بک اسلش \ است که قبل از کاراکتر غیر مجاز قرار می گیرد.

به مثال زیر توجه کنید:

در مثال بالا پایتون اجازه نمی دهد که همزمان از کوتیشن مارک دوتایی در داخل رشته ای که با ;وتیشن دوتایی تنوشته شده است استفاده کنیم. نتیجه اجرای این کد مشاهده خطلای نحوی در خروجی است.

خروجی:

حالا مثال بالا را با قرار دادن کارکتر فرار قبل از کاراکترهای غیر مجاز دوباره اجرا می کنیم .

خروجی:

اما راه حل دیگری هم برای حل این مشکل وجود دارد . استفاده از کوتیشن تکی برای رشته . به مثال دقت کنید.

 

 

برچسب ها
نمایش بیشتر

میثم پورواحدی

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

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

همچنین ببینید

بستن
دکمه بازگشت به بالا
بستن
بستن