مقدمه
این مقاله دو روش متداول را شرح می دهد که می توانید از آنها برای حذف کاراکترها از یک رشته با استفاده از پایتون استفاده کنید:
- متد
String replace()
- متد
String translate()
برای یادگیری چند روش مختلف برای حذف فاصله از رشته در پایتون، به حذف فاصله ها از رشته در پایتون مراجعه کنید.
یک شی رشته پایتون تغییر ناپذیر است، بنابراین نمی توانید مقدار آن را تغییر دهید. هر متدی که یک مقدار رشته را دستکاری کند یک شی String جدید را برمی گرداند.
مثالهای این آموزش از کنسول تعاملی پایتون در خط فرمان برای نشان دادن روشهای مختلف حذف کاراکترها استفاده میکنند.
حذف کاراکترها از یک رشته با استفاده از متد ()replace
متد ()String یک کاراکتر را با یک کاراکتر جدید جایگزین میکند. شما می توانید یک کاراکتر را از یک رشته با ارائه کاراکتر(های) به عنوان آرگومان اول و یک رشته خالی به عنوان آرگومان دوم حذف کنید.
متغیر رشته را اعلام کنید:
s = 'abc12321cba'
کاراکتر را با یک رشته خالی جایگزین کنید:
print(s.replace('a', ''))
خروجی این است:
Output
bc12321cb
خروجی نشان می دهد که هر دو رخداد کاراکتر a از رشته حذف شده اند.
حذف کاراکترهای Newline از یک رشته با استفاده از متد ()replace
یک متغیر رشته را با چند کاراکتر خط جدید اعلام کنید:
s = 'ab\ncd\nef' code... */
کاراکتر خط جدید را با یک رشته خالی جایگزین کنید:
print(s.replace('\n', ''))
خروجی این است:
Output
abcdef
خروجی نشان می دهد که هر دو کاراکتر خط جدید (\n) از رشته حذف شده اند.
با استفاده از متد ()replace یک زیر رشته را از یک رشته حذف کنید
متد ()replace رشته ها را به عنوان آرگومان می گیرد، بنابراین می توانید یک کلمه را در رشته جایگزین کنید.
متغیر رشته را اعلام کنید:
s = 'Helloabc'
یک کلمه را با یک رشته خالی جایگزین کنید:
print(s.replace('Hello', ''))
خروجی این است:
خروجی نشان می دهد که رشته Hello از رشته ورودی حذف شده است.
با استفاده از متد ()replace تعداد دفعات مشخصی کاراکترها را حذف کنید
میتوانید آرگومان سومی را در متد ()replace برای تعیین تعداد جایگزینهایی که باید در رشته اجرا شوند، قبل از توقف ارسال کنید. به عنوان مثال، اگر 2 را به عنوان آرگومان سوم مشخص کنید، آنگاه تنها 2 رخداد اول کاراکترهای داده شده جایگزین می شوند.
متغیر رشته را اعلام کنید:
s = 'abababab'
دو مورد اول کاراکتر را با کاراکتر جدید جایگزین کنید:
print(s.replace('a', 'A', 2)) # perform replacement twice
خروجی این است:
Output
AbAbabab
خروجی نشان می دهد که دو اتفاق اول کاراکتر a با کاراکتر A جایگزین شده است. از آنجایی که تعویض فقط دو بار انجام شد، سایر موارد یک در رشته باقی می ماند.
با استفاده از متد translate() کاراکترها را از رشته حذف کنید
متد ()translate رشته پایتون با استفاده از جدول نگاشت داده شده یا فرهنگ لغت جایگزین هر کاراکتر در رشته می شود.
یک متغیر رشته ای را اعلام کنید:
s = 'abc12321cba'
مقدار نقطه کد یونیکد یک کاراکتر را دریافت کنید و آن را با None جایگزین کنید:
print(s.translate({ord('b'): None}))
خروجی این است:
Output
ac12321ca
خروجی نشان می دهد که هر دو رخداد کاراکتر b همانطور که در فرهنگ لغت سفارشی تعریف شده است از رشته حذف شده اند.
با استفاده از متد translate() چندین کاراکتر را از یک رشته حذف کنید
با استفاده از متد translate() می توانید چندین کاراکتر را در یک رشته جایگزین کنید. مثال زیر از یک فرهنگ لغت سفارشی استفاده می کند، {ord(i): None برای i در ‘abc’}، که همه رخدادهای a، b و c در رشته داده شده را با None جایگزین می کند.
متغیر رشته را اعلام کنید:
s = 'abc12321cba'
همه کاراکترهای abc را با None جایگزین کنید:
print(s.translate({ord(i): None for i in 'abc'}))
خروجی این است:
Output
12321
خروجی نشان می دهد که تمام رخدادهای a، b و c از رشته همانطور که در فرهنگ لغت سفارشی تعریف شده است حذف شده اند.
با استفاده از متد translate() کاراکترهای Newline را از یک رشته حذف کنید
با استفاده از متد translate() می توانید کاراکترهای خط جدید را در یک رشته جایگزین کنید. مثال زیر از یک فرهنگ لغت سفارشی استفاده می کند، {ord(‘\n’): None}، که همه رخدادهای \n در رشته داده شده را با None جایگزین می کند.
متغیر رشته را اعلام کنید:
s = 'ab\ncd\nef'
همه کاراکترهای \n را با None جایگزین کنید:
print(s.translate({ord('\n'): None}))
خروجی این است:
Output
abcdef
خروجی نشان میدهد که تمام رخدادهای نویسه خط جدید \n از رشته همانطور که در فرهنگ لغت سفارشی تعریف شده است حذف شدهاند.
نتیجه
در این آموزش، روش هایی را که می توانید برای حذف کاراکترها از رشته ها در پایتون استفاده کنید، یاد گرفتید. به یادگیری خود در مورد رشته های پایتون ادامه دهید.