مرکز آموزش و رقابت برنامه نویسی پایتون

مرکز آموزش برنامه نویسی پایتون

به راحتی با آموزش‌های آنلاین و ویدئویی شما می‌توانید دوره‌های مرتبط با زبان برنامه‌نویسی پایتون را یاد بگیرید، در آموزش‌های آنلاین هزینه رفت و آمد کلاس‌های حضوری و همچنین هزینه‌های بالای ثبت‌نام در کلاس‌های حضوری را پرداخت نخواهید کرد. و منابع مطالعاتی همیشه در دسترس خواهد بود.

📘 آموزش مقدماتی پایتون

📘 آموزش تکمیلی پایتون

📘 آموزش پردازش تصویر با پایتون

📘 آموزش یادگیری ماشین با پایتون

📘 آموزش تشخیص ایمیل های اسپم با پایتون

۲ مطلب با کلمه‌ی کلیدی «find» ثبت شده است

کار با متن در پایتون (6)

✅ مثالهای گوناگون


🔹 تابع split بصورت پیش فرض رشته ها رو از طریق space یا همون فاصله جدا میکنه و کلمات رو استخراج میکنه، اما ما میتونیم داخل پرانتز کارکتر دلخواه خودمون رو بعنوان میعار جدا کردن در نظر بگیریم. مثال زیر رو ببنید:


>>> text4 = "ouagadougou"

>>> text5 = text4.split('ou')

>>> text5

['', 'agad', 'g', '']


▪️خوب در مثال بالا رشته رو بر اساس کارکتر ou جدا کرد.دقت کنید که ما text4 رو نمیتونیم بر اساس میعار فاصله جدا کنیم چون هیچ فاصله ای در این رشته وجود نداره و اگر داخل پرانتر دستور split خالی باشه به ارور خواهیم خورد.


🔹 در دوره مقدماتی در مورد لیست صحبت کردیم و اگر بخواهیم text4 رو تبدیل به لیست کنیم کارکتر به کارکتر داخل یک لیست برامون قرار میده.


>>> list(text4)

['o', 'u', 'a', 'g', 'a', 'd', 'o', 'u', 'g', 'o', 'u']


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


>>> [c for c in text4]

['o', 'u', 'a', 'g', 'a', 'd', 'o', 'u', 'g', 'o', 'u']


🔹 حالا اگر بخواهیم دوباره ou رو به text5 متصل کنیم از دستور join برای اینکار استفاده میکنیم.و نحوه استفاده بصورت زیر خواهد بود


>>> 'ou'.join(text5)

'ouagadougou'



🔹یک رشته جدید تو این مثال خواهیم زد که ابتدای رشته دوتا فاصله وجود داره؛ ما اول میاییم با دستور split کلمات رو جدا میکنیم و اتفاقی که میفته فاصله های ابتدایی رو بعنوان یک کلمه مجزا درنظر میگیره


>>> text6 = '  a quick brown fox jumped over the lazy dog'

>>> text6.split(' ')

['', '', 'a', 'quick', 'brown', 'fox', 'jumped', 'over', 'the', 'lazy', 'dog']



🔹حالا اگر بخواهیم این فاصله های اضافی رو برداریم و با توجه به اینکه این موضوع برای مباحث متن کاوی مهم هست که موارد اضافه رو حذف کنیم از دستور strip برای اینکار استفاده خواهیم کرد.


>>> text7 = text6.strip()

>>> text7.split(' ')

['a', 'quick', 'brown', 'fox', 'jumped', 'over', 'the', 'lazy', 'dog']



▪️همانطور که در بالا مشاهده میکنیم دیگر فاصله ها در لیست ما قرار ندارند.



مثال دستور find و replace


🔹 در متن جدید میخواهیم کارکتر o رو پیدا کنیم اگر از دستور find استفاده کنیم اولین کارکتر o در متن رو پیدا میکنه و اندیسش رو بعنوان خروجی برمیگردونه. (اندیس در پایتون از صفر شروع میشه)


>>> text8 = "a quick brown fox jumped over the lazy dog"

>>> text8.find('o')

10


🔹 اگر دستور rfind برای اینکار استفاده کنید آخرین کارکتر o در رشته رو پیدا میکنه، بعبارتی از آخر رشته جستجو رو انجام میده.


>>> text8.rfind('o')

40


🔹 و برای جایگزینی کارکتر o با مقدار صفر (0) میتونیم از دستور replace بصورت زیر استفاده کنیم


>>> text8.replace('o','0')

'a quick br0wn f0x jumped 0ver the lazy d0g'

۰ نظر موافقین ۰ مخالفین ۰

کار با متن در پایتون (5)

✅ معرفی توابع پایتون برای رشته ها


🔹 تو تایپیک قبل در مورد اینکه چه توابعی برای کلمات در پایتون وجود داره رو گفتیم، الان میخواهیم توابع رو برای رشته ها بگیم. باز یک تعریف کلی داریم و مثال ها رو تو بخش های بعدی خواهیم زد.


1️⃣ تبدیل کردن به حروف کوچک و بزرگ رشته ها و همچنین تبدیل یک رشته به حالت titlecase


s.upper()  ;  s.lower()  ;  s.title()


🔹 نکته ای که در توابع بالا نسبت به توابع مربوط به کلمات هست اینه که ما اینجا is رو نداریم. و در واقع اینجا نماییم بررسی کنیم که، آیا رشته ما با حروف بزرگ تشکیل شده یا کوچک.بلکه اینجا کار تبدیل کردن رو انجام خواهیم داد.


2️⃣ جدا کردن کلمات که بارها تو اسلایدهای قبل ازش استفاده کردیم و در بخش های بعدی هم استفاده خواهیم کرد.


s.split()


3️⃣حالا اگر بخواهیم یک سند رو یا یک پارگراف رو بر اساس خطوط جدا کنیم میتونیم از تایع زیر استفاده کنیم.


s.splitlines()


🔹نکته ای که اینجا هست و شاید براتون سوال باشه اینه چطور میتونیم در IDLE پایتون، یک رشته رو در چند خط بنویسیم.برای اینکار کافیه کوتیشن که برای رشته در ابتدا و انتهاش بکار برده میشه بجای یکی از سه تا استفاده کنیم.


>>> s="""how are

you today"""

>>> s

'how are\nyou today'


4️⃣ تابع join برای اتصال رشته ها به هم هست که ما تو بخش های بعدی مثال های خواهیم زد.


s.join()


5️⃣ تابع بعدی برای حذف می باشد وقتی از strip استفاده میکنیم و داخل پرانتر کارکتری رو وارد میکنیم سبب میشه که اون کارکتر از کل رشته حذف بشه و اگر از rsrtip استفاده کنیم از انتهای رشته فقط یک موردش حذف خواهد شد . حالا مثالهای رو در بخش های بعدی خواهید دید.


s.strip()  ;  s.rstrip()


6️⃣ دستور بعدی برای یافتن یک رشته یا کارکتر داخل رشته دیگه استفاده میشه.اگر عبارت داخل پرانتر در رشته بود اندیس شروع اون عبارت رو بعنوان خروجی برمیگردونه. اما یک تفاوت اساسی در rfind وجود داره اینه که در این تابع حتما باید کلمه مورد نظر بصورت جدا باشه.ما برای این مورد خاص همینجا یک مثال میزنیم


s.find()  ;  s.rfind()


مثال 


>>> s1 = "this is really a string example....wow!!!";

>>> s2 = "is";

>>> s1.find(s2)

2

>>> s1.rfind(s2)

5


🔸 خوب تو مثال بالا کاملا تفاوت این دو تابع مشخصه که ما در rfind کلماتی رو پیدا میکنیم که مجزا باشند و ترکیب شده با حروف دیگری نباشند.


7️⃣ آخرین دستور این بخش دستور جایگزینی یا همون replace هست که میاد تو رشته میگرده و اگر عبارت u  وجود داشت با v جایگزین خواهد کرد.


s.replace(u,v)


🔘 در آخر باید بگم حتما مثالهای گوناگونی برای این بخش خواهیم زد. تا تمام این توابع، کامل توضیح داده باشیم


۰ نظر موافقین ۰ مخالفین ۰