مثال
تقسیم کردن جمله به صورت کلمه به کلمه و تبدیل آن به یک لیست که هر کلمه یک عضو از لیست است:
txt = "welcome to the jungle"
x = txt.split()
print(x)
توضیحات
متد split()
متن را به یک شکل مشخص تقسیم کرده و به یک لیست تبدیل می کند. جدا کننده به صورت پیش فرض “فضای خالی” است در نتیجه به صورت پیشفرض متن به کلماتش تقسیم می شود. اما این جدا کننده را می توان به پارامتر ورودی متد، تعیین کرد. اگر پارامتر maxsplit تعیین شود، فقط به تعداد مشخص شده به علاوه 1 تکه ی تقسیم شده ایجاد خواهد شد.
سینتکس
string.split(separator, maxsplit)
مقادیر پارامتر ها
پارامتر | توضیح |
---|---|
separator | اختیاری. جدا کننده- پیشفرض: فضای خالی |
maxsplit | اختیاری. تعداد تکه هایی که باید ایجاد شود. پیشفرض = 1- یعنی تمام تکه های ممکن |
مثال
تقسیم کردن متن و استفاده از علامت کاما به همراه فضای خالی به عنوان جداکننده:
txt = "hello, my name is Peter, I am 26 years old"
x = txt.split(", ")
print(x)
مثال
استفاده از کاراکتر # به عنوان جداکننده:
txt = "apple#banana#cherry#orange"
x = txt.split("#")
print(x)
مثال
تقسیم متن به 2 تکه:
txt = "apple#banana#cherry#orange"
# setting the maxsplit parameter to 1, will return a list with 2 elements!
x = txt.split("#", 1)
print(x)
با سلام ممنون از آموزش خوبتان یه سوال داشتم (فرض کنید یک متنی در اختیار شما قرار دارد. برنامه ای بنویسید که ایمیلهای موجود در متن را پیدا کرده و چاپ نماید)
با استفاد از متد split() چطور می توان نوشت
سلام. خیلی ممنون
با متد split که نمیشه این کار رو کرد. این متد فقط متن رو بر اساس یک کاراکتر یا یک کلمه خاص تکه تکه می کنه. برای اینکار باید از Regex ها استفاده کنید. با split نهایتاً می تونید تمام کلمات موجود در متن رو پیدا کنید که بعضی از اون کلمات می تونن آدرس ایمیل باشند. و بعد یکی یکی کلمات رو چک کنید:
سلام. سپاس فراوان. بسیار عالی، مختصر ومفید.
سلام خیلی ممنون از اموزش های خوبتون
برنامه ای میخوام که وقتی اسم و فامیلی کاربر را گرفت بینش ... بزاره با اسپلیت
سلام
چه طوری یک txt را براساس علامت سوال و نقطه و علامت تعجب شکست همزمان
برای تقسیم بندی یه لیست عدیی ۱۰ تایی به لیست های کوچیک تره ۳ تایی چیکار باید کرد؟
برای تقسیم بندی یک لیست عددی ۱۰ تایی به لیست های کوچکتر ۳ تایی در پایتون، می توانید از تابع `chunk` در ماژول `itertools` استفاده کنید. این تابع به شما امکان می دهد لیست را به تعداد مورد نظر تقسیم کنید. برای تقسیم لیست به لیست های کوچکتر ۳ تایی، می توانید از کد زیر استفاده کنید:
این کد لیست اصلی را به لیست های کوچکتر ۳ تایی تقسیم می کند و نتیجه را در متغیر `chunked_list` ذخیره می کند. سپس نتیجه را چاپ می کند.
سلام .
یک سوال دارم . ممنون میشم راهنمایی کنید.
یک فایل word دارم که باید متن فارسی داخل اون رو به صورت ستونی بنویسم ، یعنی هر یک کلمه از متن را داخل یک خط نوشته بشه و برای کلمه بعدی بره خط بعدی ... در آخر هم کل متن ستونی چاپ شده رو دوباره داخل فایل word جدید تحویل بده...
ممنون میشم راهنمایی کنید
باتشکر از سایت خوبتون
سلام. وقت بخیر
اول که برای خوندن اطلاعات درون فایل ورد می تونید از کد زیر استفاده کنید:
که به جای input_file باید آدرس فایل ورد رو قرار بدید. بعد با استفاده از متد split محتوای original_text رو به کلماتش تقسیم کنید و با دستور
column_text = '\n'.join(words)
لیست کلمات رو با فاصله یک خط از هم توی یک متغیر جداگانه ذخیره کنید.حالا باید متغیر column_text رو در یک فایل جدید ذخیره کنید.
برای اینکار می تونید از کتابخانه
docx
استفاده کنید.و از کد زیر برای نوشتن متن ستونی در فایل استفاده کنید. (به جای output_file آدرس فایل خروجی رو قرار بدید):
با درود
ببخشید سوالی داشتم موقعی که از تابع split استفاده میکنیم، وقتی متن رو بر اساس کاراکتری تفکیک میکنه تو قسمت تفکیک شده اون کاراکتر رو نمینویسن؟
سلام. وقت بخیر
نه دیگه اون کاراکتر نوشته نمیشه