آموزش رشته در پایتون
منبع: https://rasanika.com
رشته ها
رشتهها در پایتون توسط علامت نقل قول (کوتیشن) تکی یا دوتایی تعریف میشوند.
'hello'
همان "hello"
است.
می توانید یک رشته را با تابع print()
نمایش دهید:
مثال
print("Hello")
print('Hello')
رشته را به یک متغیر اختصاص دهید
تخصیص یک رشته به یک متغیر با نام متغیر و به دنبال آن علامت مساوی و رشته انجام میشود:
مثال
a = "Hello"
print(a)
رشته های چند خطی
با استفاده از سه کوتیشن دوتایی پشت سر هم می توانید یک رشته چند خطی (حاوی کاراکتر newline) را به یک متغیر اختصاص دهید:
مثال
a = """Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua."""
print(a)
یا سه کوتیشن تکی:
مثال
a = '''Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.'''
print(a)
توجه: داخل نتیجه، خطوط جدید (نیولاین) در همان موقعیتی که در کد درج شده اند قرار می گیرند.
رشته ها آرایه هستند
مانند بسیاری از زبان های برنامه نویسی محبوب دیگر، رشته ها در پایتون آرایه هایی از بایت ها هستند که کاراکترهای یونیکد را نشان می دهند.
با این حال، پایتون نوع داده کاراکتری ندارد، یک کاراکتر فقط یک رشته با طول 1 است.
از براکت ها []
میتوان برای دسترسی به عناصر رشته استفاده کرد.
مثال
کاراکتر را در موقعیت 1 بدست آورید (کاراکتر اول موقعیت 0 را دارد):
a = "Hello, World!"
print(a[1])
حلقه زدن روی یک رشته
از آنجایی که رشته ها آرایه هستند، می توانیم روی کاراکترهای یک رشته، با استفاده از for
حلقه بزنیم.
مثال
روی حروف کلمه "banana" حلقه بزنید:
for x in "banana":
print(x)
در پست های بعدی با حلقه for و حلقه while بیشتر آشنا خواهید شد.
طول رشته
برای بدست آوردن طول یک رشته، از تابع len()
استفاده کنید.
مثال
تابع len()
طول یک رشته را برمی گرداند:
a = "Hello, World!"
print(len(a))
بررسی رشته
برای بررسی اینکه آیا یک عبارت یا کاراکتر خاص در یک رشته وجود دارد، می توانیم از کلیدواژه in
استفاده کنیم:
مثال
بررسی کنید که آیا "free" در متن زیر وجود دارد یا خیر:
txt = "The best things in life are free!"
print("free" in txt)
استفاده در یک شرط if
فقط در صورت وجود "free" چاپ کنید:
txt = "The best things in life are free!"
if "free" in txt:
print("Yes, 'free' is present.")
با عبارات If پست های بعدی آشنا خواهید شد.
بررسی NOT
برای بررسی اینکه آیا یک عبارت یا کاراکتر خاص در یک رشته وجود ندارد، می توانیم از کلیدواژه not in
استفاده کنیم:
مثال
بررسی کنید که آیا "expensive" در متن زیر وجود ندارد:
txt = "The best things in life are free!"
print("expensive" not in txt)
استفاده در یک شرط if
مثال
چاپ فقط در صورتی که "expensive" وجود نداشته باشد:
txt = "The best things in life are free!"
if "expensive" not in txt:
print("No, 'expensive' is NOT present.")
برش دادن یا Slicing
با استفاده از روش slice می توانید محدوده ای از کاراکترها را برگردانید.
برای برگرداندن بخشی از رشته، اندیس شروع و اندیس پایان را که با علامت دو نقطه از هم جدا شده اند، مشخص کنید.
مثال
کاراکترها را از موقعیت 2 (شامل آن) تا موقعیت 5 (بدون آن) به دست آورید:
b = "Hello, World!"
print(b[2:5])
نکته: کاراکتر اول دارای اندیس 0 است.
برش از ابتدا
با ذکر نکردن اندیس شروع، محدوده از اولین کاراکتر شروع می شود:
مثال
کاراکترها را از ابتدا تا موقعیت 5 (بدون آن) به دست آورید:
b = "Hello, World!"
print(b[:5])
برش تا انتها
با ذکر نکردن شاخص پایانی، محدوده تا انتها میرود:
مثال
کاراکترها را از موقعیت 2 تا انتها به دست آورید:
b = "Hello, World!"
print(b[2:])
اندیس منفی
برای شروع برش از انتهای رشته از اندیس های منفی استفاده کنید:
مثال (کاراکتر ها از o تا d در World ولی شامل خود d نیست)
b = "Hello, World!"
print(b[-5:-2])
ویرایش رشته ها
پایتون مجموعه ای از متدهای داخلی دارد که می توانید روی رشته ها استفاده کنید.
حروف بزرگ
مثال
متد upper()
رشته را با حروف بزرگ برمی گرداند:
a = "Hello, World!"
print(a.upper())
حروف کوچک
مثال
متد lower()
رشته را با حروف کوچک برمی گرداند:
a = "Hello, World!"
print(a.lower())
فضای خالی را حذف کنید
فضای خالی فضای قبل یا بعد از متن اصلی است، و اغلب شما می خواهید این فاصله را حذف کنید.
مثال
متد strip()
هر فضای خالی را از ابتدا یا انتهای رشته حذف می کند:
a = " Hello, World! "
print(a.strip()) # returns "Hello, World!"
جایگزین کردن رشته
مثال
متد replace()
یک رشته را با رشته دیگری جایگزین می کند:
a = "Hello, World!"
print(a.replace("H", "J"))
رشته را از هم جدا کنید
متد split()
رشته را با جداکنندهای که مشخص کرده اید از هم جدا کرده و به یک لیست تبدیل میکند.
مثال
a = "Hello, World!"
print(a.split(",")) # returns ['Hello', ' World!']
در بخش List با لیست ها بیشتر آشنا خواهید شد.
الحاق رشته ها
برای به هم پیوستن یا ترکیب دو رشته می توانید از عملگر +
استفاده کنید.
مثال
ادغام متغیر a
با متغیر b
در متغیر c
:
a = "Hello"
b = "World"
c = a + b
print(c)
مثال
برای اضافه کردن فاصله بین آنها، یک " "
اضافه کنید:
a = "Hello"
b = "World"
c = a + " " + b
print(c)
فرمت یا قالب بندی رشته
همانطور که در قسمت متغیرهای پایتون آموختیم، نمیتوانیم رشتهها و اعداد را مثل این ترکیب کنیم:
age = 36
txt = "My name is John, I am " + age
print(txt)
اما می توانیم رشته ها و اعداد را با استفاده از متد format()
ترکیب کنیم!
متد format()
آرگومانهای پاس شده را میگیرد، آنها را قالببندی میکند و در یک رشته قرار میدهد:
مثال
از format()
برای درج اعداد در رشته ها استفاده کنید:
age = 36
txt = "My name is John, and I am {}"
print(txt.format(age))
متد ()format تعداد نامحدودی از آرگومان ها را می گیرد و در مکان های نگهدارنده (placeholder) مربوطه قرار می گیرد:
مثال
quantity = 3
itemno = 567
price = 49.95
myorder = "I want {} pieces of item {} for {} dollars."
print(myorder.format(quantity, itemno, price))
میتوانید از اعداد شاخص استفاده کنید {0}
تا مطمئن شوید که آرگومانها در نگهدارنده صحیح قرار میگیرند:
مثال
quantity = 3
itemno = 567
price = 49.95
myorder = "I want to pay {2} dollars for {0} pieces of item {1}."
print(myorder.format(quantity, itemno, price))
Escape در پایتون
برای درج کاراکتر هایی که در یک رشته مجاز نیستند، از یک کاراکتر Escape استفاده کنید.
یک کاراکتر اسکیپ یک علامت بک اسلش \
است که به دنبال آن کاراکتری که میخواهید درج کنید، قرار می گیرد.
نمونه ای از یک کاراکتر غیر مجاز، یک "
در داخل رشته ای است که خودش با این کاراکتر تعریف شده باشد:
مثال
اگر در داخل رشته ای که با کوتیشن های دوتایی احاطه شده است از "
استفاده کنید، با خطا مواجه خواهید شد:
txt = "We are the so-called "Vikings" from the north."
برای رفع این مشکل از کاراکتر escape استفاده کنید \"
:
مثال
txt = "We are the so-called \"Vikings\" from the north."
کاراکتر های Escape
سایر کاراکترهای اسکیپ استفاده شده در پایتون:
کاراکتر | نتیجه | |
\' | Single Quote | |
\\ | Backslash | |
\n | New Line | |
\r | Carriage Return | |
\t | Tab | |
\b | Backspace | |
\f | Form Feed | |
\ooo | Octal value | |
\xhh | Hex value |
متدهای رشته در پایتون
همه این متد ها بدون تغییر رشته اصلی، یک رشته جدید بر می گردانند:
متد | توضیح |
| اولین کاراکتر را به حروف بزرگ تبدیل می کند |
| رشته را به حروف کوچک تبدیل می کند |
| رشته را وسط چین می کند |
| تعداد دفعاتی که یک مقدار مشخص در یک رشته تکرار شده را برمی گرداند |
| یک نسخه کدگذاری شده از رشته را برمی گرداند |
| اگر رشته با مقدار مشخص شده به پایان برسد، مقدار true را برمی گرداند |
| اندازه زبانه (Tab) رشته را تنظیم می کند |
| رشته را برای یک مقدار مشخص جستجو می کند و موقعیت جایی که پیدا شده را برمی گرداند |
| مقادیر مشخص شده در یک رشته را قالب بندی می کند |
| مقادیر مشخص شده در یک رشته را قالب بندی می کند |
| رشته را برای یک مقدار مشخص جستجو می کند و موقعیت جایی که پیدا شده را برمی گرداند |
| اگر همه کاراکترهای رشته، عددی باشند True برمیگرداند |
| اگر همه کاراکترهای رشته در حرف یا عدد باشند، True برمیگرداند |
| اگر همه کاراکترهای رشته ascii باشند، True برمیگرداند |
| اگر همه کاراکترهای رشته اعشاری باشند، True را برمیگرداند |
| اگر همه کاراکترهای رشته رقم باشند، True را برمیگرداند |
| اگر رشته یک شناسه باشد، True را برمیگرداند |
| اگر همه کاراکترهای رشته کوچک باشند، True را برمیگرداند |
| اگر همه کاراکترهای رشته عددی باشند، True را برمیگرداند |
| اگر همه کاراکترهای رشته قابل چاپ باشند، True را برمی گرداند |
| اگر همه کاراکترهای رشته خالی باشند، True را برمیگرداند |
| اگر رشته از قوانین عنوان پیروی کند، True را برمیگرداند |
| اگر همه کاراکترهای رشته با حروف بزرگ باشند، True را برمیگرداند |
| عناصر یک تکرار شونده را به یک رشته تبدیل می کند |
| یک نسخه چپ چین رشته را برمی گرداند |
| رشته را به حروف کوچک تبدیل می کند |
| یک نسخه برش شده از سمت چپ رشته را برمیگرداند |
| یک جدول ترجمه را برای استفاده در ترجمه ها برمی گرداند |
| یک Tuple را برمیگرداند که در آن رشته به سه قسمت تقسیم شده است |
| رشتهای را برمیگرداند که در آن یک مقدار مشخص با یک مقدار مشخص دیگر جایگزین میشود |
| رشته را برای یک مقدار مشخص جستجو می کند و آخرین موقعیت جایی که پیدا شده را برمی گرداند |
| رشته را برای یک مقدار مشخص جستجو می کند و آخرین موقعیت جایی که پیدا شده را برمی گرداند |
| یک نسخه راست چین شده رشته را برمی گرداند |
| یک Tuple را برمیگرداند که در آن رشته به سه قسمت تقسیم شده است |
| رشته را در جداکننده مشخص شده تقسیم می کند و لیستی را برمی گرداند |
| یک نسخه برش راست رشته را برمیگرداند |
| رشته را در جداکننده مشخص شده تقسیم می کند و لیستی را برمی گرداند |
| رشته را در شکست های خط (line breaks) جدا و لیست آن را برمی گرداند |
| اگر رشته با مقدار مشخص شده شروع شود مقدار true را برمی گرداند |
| نسخه کوتاه شده رشته را برمی گرداند |
| حروف بزرگ را تبدیل به کوچک و حروف کوچک را تبدیل به بزرگ می کند |
| اولین حرف هر کلمه را تبدیل به حروف بزرگ می کند |
| یک رشته ترجمه شده بر می گرداند |
| رشته را به حروف بزرگ تبدیل می کند |
| رشته را با تعداد مشخصی از 0 از ابتدای آن پر می کند |