در حال بارگزاری

کاربرد split در پایتون (python) برای string (متن) ها

شما اینجا هستید:
کاربرد split در پایتون (python) برای string (متن) ها

کاربرد split در پایتون (python) برای string (متن) ها

در این آموزش به صورت خیلی کامل به بررسی متد split در پایتون (python) می‌پردازیم! که برای string ها (رشته ها) مورد استفاده قرار می‌گیرد!

متن آموزشی متد split در پایتون (python)

در واقع split یک مِتُد (Method) است! که اگر برای یک string (به معنی «رشته» یا «متن») استفاده بشه، میاد اون رو به عناصرش میشکنه! (احتمالاً متوجه نشدید! ولی اشکال نداره، تووی مثال برامون ملموس‌تر خواهد بود!)

مثال

متغیر a رو به صورت زیر تعریف کردیم!

a="Sajjad Rahmani from Koolac Website"

همینطور که می‌بینید، این متغیر یک متن (رشته یا String) دَرِش ذخیره شده! و حالا اگر از متد split براش استفاده کنیم، میاد، اجزاء این بنده‌خدا (یعنی متغیر a) رو از هم تفکیک میکنه! (split یعنی تفکیک کردن!)

یعنی اون متن رو تبدیل میکنه به لیستی شامل موارد زیر!:

['Sajjad', 'Rahmani', 'from', 'Koolac', 'Website']

برای این کار کافیه بنویسیم:!

a="Sajjad Rahmani from Koolac Website"
print(a.split())
print(type(a.split()))

خط 1 که مشخصه، اومدیم هموووون متغیر a رو تعریف کردیم!

اما در خط 2 داریم میگیم a رو split کن! و بعد دست آخر چاپش کن!

در خط 3 هم میگیم نوعِ، این چیزی که split شده‌ی متغیر a است رو به ما نشون بده تا مطمئن بشیم این سجّاد رحمانی توی وبسایت کولاک درست گفت که خروجی یک لیست میشه!!

مطلب مشابه پیشنهادی:

آموزش لیست ها (lists) در پایتون (Python)

خروجی این قطعه کد میشه:!

['Sajjad,', 'Rahmani,', 'from,', 'Koolac,', 'Website']
<class 'list'>

یک سطح پیشرفته‌تر!

توی بخش قبلی، با کلیت متد split در پایتون (Python) آشنا شدیم! حالا میخوایم بریم سراغ پله بعد!

مثلاً متغیر b رو به صورت زیر در نظر بگیرید!

b="Sajjad, Rahmani, from, Koolac, Website"

قبول دارید اینجا، اعضای داخل این رشته (یا متن یا String) با «یه دووونه , و یه دووونه فاصله» از هم جدا شدن؟! باید قبول داشته باشید، علی‌الاصول!

حالا اینو باید چجوری به متد split در پایتون (python) بفهمونیم؟!

جواب اینه که کافیه به صورت زیر بنویسیم!:

print(b.split(", "))

دیگه اینجا، عملاً داریم میگیم، آقای پایتون (python) بیا متغیر b رو split کن (تفکیک کن!) منتهی حواست باشه که اووون چیزی که قراره مؤلفه‌ها رو از هم جداکنه «یه دونه , و یه دونه فاصله» است!

که خروجی بازهم میشه:!

['Sajjad', 'Rahmani', 'from', 'Koolac', 'Website']

الان می‌تونید برید تمرین آخر این آموزش رو حل کنید!

دو سطح پیشرفته‌تر!

دوباره متغیر c رو به صورت زیر در نظر بگیرید تا توضیح بدیم!

c="Sajjad-Rahmani-from-Koolac-Website"

خب! حالا قطعه کد زیر رو در نظر بگیرید:

print(c.split("-",1))

این میاد میگه، آقای پایتون (Python)! محبت کن مولفه‌های متغیر c رو از هم تفکیک کن! (با علم به این نکته که چیزی که جداکننده مولفه‌هاست همووون است!)

البته حواست باشه، فقط 1 دونه مولفه رو جداکن، بقیه رو بذار کنار!

احتمالاً می‌پرسید یعنی چی؟! من هم باید در جوابتون سوال بپرسم! به من بگید، مولفه اول اون متغیر c چیست؟! (علی‌الاصول جواب میدید: Sajjad !)

خب! پس این متد split در پایتون (Python) میاد Sajjad رو جدا میکنه و بقیه رو میذاره کنار! منظورم از «بقیه» رو در زیر آوردم:!

مولفه اول: Sajjad

بقیه: Rahmani-from-Koolac-Website

پس خروجی میشه:!

['Sajjad', 'Rahmani-from-Koolac-Website']

یه مثال دیگه:

به نظرتون اگر برای همون متغیر c بیایم بگیم:

print(c.split("-",3))

خروجی چی میشه؟! [اینو اول فکر کنید، بعد جواب من رو نگاه کنید! احتمالاً خودتون بتونید حل کنید!]

 

بله درسته! میاد 3 مولفه رو جدا میکنه و بقیه رو میذاره یه کنار!

مولفه اول: Sajjad

مولفه دوم: Rahmani

مولفه سوم: from

بقیه: Koolac-Website

که خروجیش میشه!:

['Sajjad', 'Rahmani', 'from', 'Koolac-Website']

مجموعه تمرین‌ها

تمرین 1: تفکیک (split کردن) در هر یک از موارد چگونه اتفاق می‌افتد؟!

c="I'm Sajjad Rahmani."

تمرین 2: در پایتون (python) چجوری می‌تونیم، رشته زیر رو براساس «:» از هم جدا کنیم؟! خروجی نهایی چی میشه؟!

c="I'm:Sajjad:Rahmani:"

تمرین 3: متغیر زیر را در نظر بگیرید و برای بندهای الف تا پ بگید که خروجی چی میشه و تحلیل‌شما از خروجی چیست؟! (یعنی تفسیر کنید که چرا خروجی فلان شد!)

c="Sajjad-Rahmani-from-Koolac-Website"

الف)

print(c.split("-",4))

ب)

print(c.split("-",0))

پ)

print(c.split("-",5))

جواب تمارین

تمرین1 !

["I'm", 'Sajjad', 'Rahmani.']

تمرین 2 !

["I'm", 'Sajjad', 'Rahmani', '']

تمرین 3 !

الف)!

['Sajjad', 'Rahmani', 'from', 'Koolac', 'Website']

گفته 4 تا مولفه رو تفکیک کن و بقیه رو بذار کنار! 4 تا مولفه میشه Sajjad و Rahmani و from و Koolac و بقیه هم میشه Website!

ب)!

['Sajjad-Rahmani-from-Koolac-Website']

یعنی 0 تا مولفه رو تفکیک کن و بقیه (یعنه همه‌ی رشته یا string) رو بذار کنار!

پ)!

['Sajjad', 'Rahmani', 'from', 'Koolac', 'Website']

یعنی 5 تا مولفه رو تفکیک کن و بقیه (که میشه 0 مولفه) رو بذار کنار!

هرچند سعی کردیم توضیح کاملی بدیم! اما اگر جایی رو متوجه نشدید، در بخش نظرات با ما در میون بذارید، قطعاً درخدمتتون هستیم!

پاسخ به سوالات شما!

در این بخش برخی از سوالاتی که کاربران عزیز کولاک پرسیدن رو مطرح می‌کنیم و جوابشون رو هم میدیم! چون ممکنه سوال شما هم باشه!

سوال 1

متن سوال: در واقع الان کد رو اینطوری نوشتم!:

a="python is good"
b=a.split("*")
print(b)

در خروجی تفکیک نشده جمله! یعنی دستور split فقط دابل کوتیشن با فاصله رو قبول میکنه؟!

جواب: نه! اینطوری نیست که split فقط محدود باش به چندتا چیز خاص! اما می‌دونید چرا کد شما درست کار نمی‌کنه! چون به پایتون (Python) بنده خدا می‌گید:!

“جناب پایتون! لطف کنید split کنید (تفکیک کنید) متنی که در a تعریف کردم رو! و مبنای تفکیک رو هم بذارید * !”

در پی دستور کاربر، python بنده خدا اطاعت میکنه و میره تا اون متن رو بر مبنای * تفکیک کنه! ولی خب شما اصلاً توی متنتون * نذاشتید که این بنده خدا بخواد بر اساس * تفکیک کنه! برای همین به نتیجه‌ای نمیرسه این بنده خدا! و همون متن خودتون رو بر می‌گردونه!

شما هم سوالی داشتید بپرسید! کولاک در خدمت شماست!

سایر مطالب پیشنهادی پایتون !

متد join در رشته ها (برای متصل کردن یک سری رشته استفاده میشه!)

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

تابع lambda در پایتون [به شدت پرکاربرد است]!

تابع zip در پایتون [برای متناظر کردن چندین لیست، تاپل و غیره!]

آموزش تابع eval در پایتون !

آموزش تابع map [+ آموزش ترکیب آن با lambda function]!

آموزش محاسبه ضرب ماتریسی !

آموزش محاسبه دترمینان یک ماتریس !

مطالب مرتبط

آموزش تابع nonzero در numpy پایتون (اندیس اعداد غیر صفر آرایه) به طور خیلی خلاصه تابع nonzero از...

آموزش محاسبه مشتق در پایتون به هر دو صورت پارامتری و عددی در این مطلب به بررسی نحوه...

جزئیات نوشته
تعداد دیدگاه 6
تعداد بازدید 26.2K
تاریخ انتشار 21/06/2019
تاریخ بروزرسانی 21/06/2019
نویسنده گروه آموزشی کولاک
برای ارسال دیدگاه ابتداواردشوید