متدهای String در پایتون – بخش اول را مطالعه کنید.

متدهای String

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

isalnum

اگر همه‌ی کاراکترهای رشته عدد یا حروف الفبا باشند True برمی‌گرداند.
دقت داشته باشید (space)!#%&? و… جزو حروف الفبا نیستند.
مثال‌های زیر بررسی ‌می‌کنند که آیا تمام کاراکترها از حروف الفبا یا عدد هستند یا خیر.

# Input
txt = "\u0033" #unicode for 3

x = txt.isdecimal()

print(x)

# Output
True
# Input
a = "\u0030" #unicode for 0
b = "\u0047" #unicode for G

print(a.isdecimal())
print(b.isdecimal())

# Output
True
False

isalpha

اگر همه‌ی کاراکترهای رشته حروف الفبا باشند True برمی‌گرداند.
مثال‌های زیر بررسی ‌می‌کنند که آیا تمام کاراکترها از حروف الفبا هستند یا خیر.

# Input
txt = "CompanyX"

x = txt.isalpha()

print(x)

# Output
True 
# Input
txt = "Company10"

x = txt.isalpha()

print(x)

# Output
False

isdecimal

اگر همه‌ی کاراکترهای رشته دسیمال ( ۰ تا ۹ ) باشند True برمی‌گرداند.
این متد برای آبجکت‌های یونیکد استفاده می‌شود.
مثال‌های زیر بررسی می‌کنند آیا همه‌ی کاراکترها در ‌آبجکت یونیکد، دسیمال هستند یا خیر.

# Input
txt = "\u0033" #unicode for 3

x = txt.isdecimal()

print(x)

# Output
True
# Input
a = "\u0030" #unicode for 0
b = "\u0047" #unicode for G

print(a.isdecimal())
print(b.isdecimal())

# Output
True
False

isdigits

اگر همه‌ی کاراکترهای رشته رقم باشندTrue برمی‌گرداند.
مثال‌های زیر بررسی می‌کنند آیا همه‌ی کاراکترها رقم هستند یا خیر.

# Input
txt = "50800"

x = txt.isdigit()

print(x)

# Output
True
# Input
a = "\u0030" #unicode for 0
b = "\u00B2" #unicode for ²

print(a.isdigit())
print(b.isdigit())

# Output
True
True

isidentifier

اگر رشته دارای شناسه معتبر باشد True برمی‌گرداند.
یک رشته در صورتی با شناسه معتبر در نظر گرفته می‌شود که فقط حاوی حروف الفبا و اعداد یا علامت Underscore باشد. شناسه معتبر نمی‌تواند با عدد شروع شود یا حاوی فضای خالی باشد.
مثال‌های زیر بررسی می‌کنند که رشته یک شناسه معتبر است یا خیر.

# Input
txt = "Demo"

x = txt.isidentifier()

print(x)

# Output
True
# Input
a = "MyFolder"
b = "Demo002"
c = "2bring"
d = "my demo"

print(a.isidentifier())
print(b.isidentifier())
print(c.isidentifier())
print(d.isidentifier())

# Output
True
True
False
False

islower

اگر همه‌ی کاراکترهای رشته با حروف کوچک باشند True برمی‌گرداند.
عددها، فاصله‌ها و نمادها بررسی نمی‌شوند.
مثال‌های زیر بررسی می‌کنند که همه‌ی کاراکترها با حروف کوچک هستند یا خیر.

# Input
txt = "hello world!"

x = txt.islower()

print(x)

# Output
True
# Input
a = "Hello world!"
b = "hello 123"
c = "mynameisPeter"

print(a.islower())
print(b.islower())
print(c.islower())

# Output
False
True
False

isnumeric

اگر همه‌ی کاراکترهای رشته عدد باشند True برمی‌گرداند.
مثال‌های زیر بررسی می‌کنند که همه‌ی کاراکترها عدد هستند یا خیر.

# Input
txt = "565543"

x = txt.isnumeric()

print(x)

# Output
True
# Input
a = "\u0030" #unicode for 0
b = "\u00B2" #unicode for ²
c = "10km2"

print(a.isnumeric())
print(b.isnumeric())
print(c.isnumeric())

# Output
True
True
False

isprintable

اگر همه‌ی کاراکترهای رشته قابل چاپ باشند True برمی‌گرداند.
مثال‌های زیر بررسی می‌کنند که همه‌ی کاراکترها قابل چاپ هستند یا خیر.

# Input
txt = "Hello! Are you #1?"

x = txt.isprintable()

print(x)

# Output
True
# Input
txt = "Hello!\nAre you #1?"

x = txt.isprintable()

print(x)

# Output
False

isspace

اگر همه‌ی کاراکترهای رشته دارای فضای خالی باشند True برمی‌گرداند.
مثال‌های زیر بررسی ‌می‌کنند که همه کاراکترهای رشته فضای خالی هستند یا خیر.

# Input
txt = "   "

x = txt.isspace()

print(x)

# Output
True
# Input
txt = "   s   "

x = txt.isspace()

print(x)

# Output
False

istitle

اگر همه‌ی کلمات با حرف بزرگ شروع شوند True برمی‌گرداند.
نمادها و اعداد نادیده گرفته می‌شوند.
مثال‌های زیر بررسی می‌کنند آیا هر کلمه با حرف بزرگ شروع می‌شود یا خیر.

# Input
txt = "Hello, And Welcome To My World!"

x = txt.istitle()

print(x)

# Output
True
# Input
a = "HELLO, AND WELCOME TO MY WORLD"
b = "Hello"
c = "22 Names"
d = "This Is %'!?"

print(a.istitle())
print(b.istitle())
print(c.istitle())
print(d.istitle())

# Output
False
True
True
True

isupper

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

# Input
txt = "THIS IS NOW!"

x = txt.isupper()

print(x)

# Output
True
# Input
a = "Hello World!"
b = "hello 123"
c = "MY NAME IS PETER"

print(a.isupper())
print(b.isupper())
print(c.isupper())

# Output
False
False
True

join

متد join برعکس متد split است. یک list یا tuple یا dictionary را به عنوان ورودی گرفته و بر اساس یک رشته‌ی مشخص شده، آن‌ها را با هم ترکیب کرده و یک رشته تولید ‌می‌کند.
مثال زیر تمام موارد در tuple را با استفاده از کاراکتر # در یک رشته ترکیب می‌کند.

# Input
myTuple = ("John", "Peter", "Vicky")

x = "#".join(myTuple)

print(x)

# Output
John#Peter#Vicky

مثال زیر تمام موارد در dictionary را با استفاده از کلمه TEST به عنوان جداکننده در یک رشته ترکیب می‌کند.

# Input
myDict = {"name": "John", "country": "Norway"}
mySeparator = "TEST"

x = mySeparator.join(myDict)

print(x)

# Output
nameTESTcountry

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

ljust

یک نسخه چپ‌چین شده از رشته را با استفاده از یک کاراکتر خاص (فضای خالی پیش‌فرض است) و یک مقدار که به عنوان طول نهایی رشته به آن اختصاص داده می‌شود، برمی‌گرداند.
مثال زیر مقدار banana را در یک رشته به طول ۲۰ کاراکتر چپ‌چین می‌کند. ۶ کاراکتر را banana اشغال می‌کند و ۱۴ کاراکتر باقیمانده با فضای‌خالی پر می‌شود.

# Input
txt = "banana"

x = txt.ljust(20)

print(x, "is my favorite fruit.")

# Output
banana              is my favorite fruit.

مثال زیر از کاراکتر O به جای فضای خالی برای پر کردن رشته استفاده می‌کند.

# Input
txt = "banana"

x = txt.ljust(20, "O")

print(x)

# Output
bananaOOOOOOOOOOOOOO

متد rjust مشابه ljust است با این تفاوت که یک نسخه راست‌چین شده از رشته را برمی‌گرداند.

lstrip

از سمت چپ کاراکترهای مشخص شده را حذف می‌کند. (فضای خالی پیش‌فرض است.)

# Input
txt = "     banana     "

x = txt.lstrip()

print("of all fruits", x, "is my favorite")

# Output
of all fruits banana     is my favorite
# Input
txt = ",,,,,ssaaww.....banana"

x = txt.lstrip(",.asw")

print(x)

# Output
banana

متد rstrip مشابه lstrip است با این تفاوت که از سمت راست کاراکترهای مشخص شده را حذف می‌کند.

منابع
w3schools.com – Python String Methods
Photo by Christina Morillo from Pexels

نظر دهید

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