آموزش استایل‌دهی به رشته‌ها در پایتون

September 2021

آموزش استایل‌دهی به رشته‌ها در پایتون

از آنجا که رشته ها اغلب از متن نوشتاری تشکیل شده اند ، موارد زیادی وجود دارد که ممکن است بخواهیم کنترل بیشتری بر نحوه ظاهر stringها داشته باشیم تا آنها را از طریق نگارشی ، شکست خط و تورفتگی برای انسان خواندنی تر کند.

 

در این آموزش ، ما برخی از روش هایی را که می توانیم با رشته های پایتون کار کنیم ، بررسی می کنیم تا مطمئن شویم که تمام متن خروجی به درستی قالب بندی شده است.

 

این محتوا مناسب افرادی است که به مباحث پایه پایتون آشنا هستند. در صورتی که تا به حال با پایتون کار نکرده‌اید پیشنهاد میکنیم دوره آموزش رایگان پایتون را ببینید. همچنین برای آموزش‌های بیشتر مربوط به stringها در پایتون میتوانید ویدیو آموزش رشته‌ها در پایتون را ببینید.

 


 

رشته های تحت اللفظی - String Literals

 

بیایید ابتدا بین string literal و string value تفاوت قائل شویم. string literal چیزی است که ما در کد منبع یک برنامه کامپیوتری، از جمله علامت نقل قول، می بینیم. string value چیزی است که ما هنگام فراخوانی تابع print () و اجرای برنامه می بینیم.

 

در برنامه "Hello, World!" ، رشته تحت اللفظی "Hello, World!" است در حالی که مقدار رشته Hello، World است. بدون علامت نقل قول مقدار رشته همان چیزی است که ما هنگام اجرای برنامه پایتون به عنوان خروجی در پنجره ترمینال می بینیم.

 

اما برخی از مقادیر رشته ممکن است نیاز به افزودن علامت نقل قول داشته باشند، مانند زمانی که ما از یک منبع نقل قول می کنیم. از آنجا که string literal و string value معادل نیستند، اغلب لازم است قالب بندی اضافی را به کلمات رشته اضافه کنیم تا اطمینان حاصل شود که مقادیر رشته به روشی که ما قصد داریم نمایش داده شود.

 


 

علامت‌های نقل قول(Quotes) و تک نقل قول (Apostrophe)

از آنجا که می توانیم از نقل قول های تک یا دو نقل قول در پایتون استفاده کنیم، می توانیم آنها را با هم ترکیب کنیم.  نقل قول های تکی را داخل نقل‌قول‌های دوگانه و نقل‌قول‌های دوگانه را در نقل‌قول‌های تکی استفاده کنیم:

'Sammy says, "Hello!"'

 

یا ، برای استفاده از یک آپوستروف مالک در یک رشته محصور در نقل قول های دوگانه:

"Sammy's balloon is red."

 

به شیوه ای که ما نقل قول های تک و دو را ترکیب می کنیم ، می توانیم نمایش علامت های نقل قول و آپستروف در رشته های خود را کنترل کنیم.

 


 

رشته‌های چند خطی در پایتون

 

چاپ رشته در خطوط متعدد می تواند متن را برای انسان خواندنی تر کند. با چند سطر، می توان رشته ها را در متنی تمیز و منظم گروه بندی کرد ، به صورت یک حرف قالب بندی کرد یا برای حفظ خطوط شعر یا اشعار ترانه استفاده کرد.

 

برای ایجاد رشته هایی که چندین خط را در بر می گیرد ، از سه نقل قول تک ''' یا  سه نقل‌قول جفت """ برای محصور کردن رشته استفاده می شود.

'''
This string is on
multiple lines
within three single
quotes on either side.
'''

 

"""
This string is on
multiple lines
within three double
quotes on either side.
"""

 

با نقل قول های سه گانه ، می توانید رشته ها را در چندین خط چاپ کنید تا خواندن متن ، به ویژه متن طولانی ، آسان تر شود.

 


 

بی‌معنا کردن کاراکتر‌ها - Escape Characters

 

روش دیگر برای قالب بندی رشته ها استفاده از کاراکتر escape است. کاراکترهای escape با کلید backslash (\) با یک کاراکتر دیگر در یک رشته ترکیب می شود تا رشته داده شده را به روش خاصی قالب بندی کند.

 

در اینجا لیستی از چندین کاراکتر  رایج escape وجود دارد:

Escape character How it formats
\ New line in a multi-line string
\ Backslash
' Apostrophe or single quote
" Double quote
\n Line break
\t Tab (horizontal indentation)

 

بیایید از یک کاراکتر escape برای افزودن علامت نقل قول به مثال بالا استفاده کنیم ، اما این بار از دو نقل قول استفاده می کنیم:

print("Sammy says, \"Hello!\"")

# OUTPUT
Sammy says, "Hello!"

 

با استفاده از کاراکتر escape "\ ما می توانیم از دو نقل قول برای محصور کردن رشته ای که شامل متن نقل شده بین دو نقل قول است ، استفاده کنیم.

 

از آنجا که ما در حال حاضر از کاراکتر escape استفاده می کنیم، می توانیم در یک رشته که از نقل قول های تک استفاده می کند، یک آپوستروف داشته باشیم.

 

وقتی از نقل قول های سه گانه مانند بالا استفاده می کنیم ، می بینیم که هنگام چاپ رشته یک فاصله در بالا و پایین وجود دارد. ما می توانیم با استفاده از کلید \ escape در بالای رشته خود و دوباره در انتهای رشته، آن فضاها را حذف کنیم، در حالی که متن را در برنامه بسیار خواندنی نگه می داریم.

"""\
This multi-line string
has no space at the
top or the bottom
when it prints.\
"""

 

به طور مشابه ، می توانیم از کاراکتر  n\ برای شکستن خطوط بدون زدن کلید enter استفاده کنیم:

print("This string\nspans multiple\nlines.")

# OUTPUT
This string
spans multiple
lines.

 

ما می توانیم کاراکترهای escape را نیز ترکیب کنیم. بیایید یک رشته چند خطی را چاپ کنیم و فاصله زبانه ها را برای یک لیست فهرست بندی شده قرار دهیم ، برای مثال:

print("1.\tShark\n2.\tShrimp\n10.\tSquid")


# OUTPUT
1.  Shark
2.  Shrimp
10. Squid

 

تورفتگی افقی ارائه شده با t\ ، هماهنگی را در ستون دوم در مثال بالا تضمین می کند و خروجی را برای انسان بسیار خواندنی می کند.

 

اگرچه n\ برای کلمات تحت خط کوتاه خوب عمل می کند ، مهم است که اطمینان حاصل شود که کد منبع برای انسان ها نیز قابل خواندن است. در مورد رشته های طولانی ، روش نقل قول سه گانه برای رشته های چند خطی اغلب ترجیح داده می شود.

 


 

رشته‌های خام

 

اگر ما قالب بندی خاصی را در رشته های خود نخواهیم چه؟ به عنوان مثال ، ممکن است لازم باشد رشته های کد رایانه ای را که عمداً از backlash استفاده می کنند ، مقایسه یا ارزیابی کنیم ، بنابراین نمی خواهیم پایتون از آن به عنوان یک کاراکتر escape استفاده کند.

 

یک رشته خام به پایتون می گوید که تمام قالب بندی های درون یک رشته، از جمله کاراکترهای escape را نادیده بگیرد.

 

ما یک رشته خام با قرار دادن یک r در مقابل رشته، درست قبل از علامت نقل قول اولیه ایجاد می کنیم:

print(r"Sammy says,\"The balloon\'s color is red.\"")

# OUTPUT
Sammy says,\"The balloon\'s color is red.\"

 

با ساختن یک رشته خام با استفاده از r در مقابل یک رشته معین ، می توانیم backslash و نشان های دیگر را که به عنوان کاراکترهای escape استفاده می شوند حفظ کنیم.

 


 

نتیجه

 

در این آموزش چندین روش برای قالب بندی متن در پایتون  از طریق کار با رشته ها مورد بررسی قرار گرفت. با استفاده از تکنیک هایی مانند کاراکترهای escape یا رشته های خام، می توانیم اطمینان حاصل کنیم که رشته های برنامه ما به درستی روی صفحه نمایش داده شده اند تا کاربر نهایی بتواند به راحتی تمام متن خروجی را بخواند.

مقالات مرتبط

جنگو چیست و چرا برای ساخت وب‌سایت فوق‌العاده است؟

چطور با حالت تعاملی پایتون کار کنیم؟

داکر چیست و چطور آن را با پایتون به کار ببریم؟

8 روش برای بررسی وجود فایل در پایتون