পাইথন এর স্ট্রিং নিয়ে যতো গুতোগুতি

Shahed Talukder
3 min readApr 8, 2021

পাইথনে তিন নিয়মে স্ট্রিং ক্রিয়েট করা যায়। সিঙ্গেল,ডাবল অথবা ট্রিপল কোট ব্যবহার করে স্ট্রিং লিখা যায়৷

>>> my_string = ‘Hello World’

>>> my_string_two = “Welcome to Python”

>>>my_string_three = ‘’’I am writing a multiple line string’’’

মাল্টিপল লাইন স্ট্রিং লিখতে আমরা চাইলে তিনটি ডাবল কোট ও ব্যবহার করতে পারি।

>>> my_string_four = “”” String using three double quotes “””

আমরা যদি চাই স্ট্রিং এর ভিতরেই সিঙ্গেল/ ডাবল কোট ব্যবহার করব তাহলে আমরা পুরো স্ট্রিং টি সিঙ্গেল কোটে লিখলে ভেতরে ডাবল কোট ব্যবহার করব এবং পুরো স্ট্রিং টি ডাবল কোটে লিখলে ভিতরে সিঙ্গেল কোট ব্যবহার করব।

>>> my_string = ‘My name is”Ratul” ’

>>>my_string = “My name is ‘Ratul’ “

অথবা আমরা চাইলে ট্রিপল কোট ও ব্যবহার করতে পারি।

স্ট্রিং কনকেটেনেশন(Concatenation):

পাইথনে একাধিক স্ট্রিং কে যোগ করাকে স্ট্রিং কনকেটেনেটিং বলে। এর জন্য আমরা ‘ + ‘ অপারেটর ব্যবহার করি।

>>>name = “Tommy is my dog.”

>>>color = “His color is Black”

>>>my_string = name + color

>>>my_string

Tommy is my dog. His color is Black

স্ট্রিং মেথডসঃ

পাইথনে স্ট্রিং হচ্ছে এক ধরনের অবজেক্ট। প্রকৃতপক্ষে পাইথনে সব কিছুই একেকটা অবজেক্ট। সেটা অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং এর সময় জানা যাবে। পাইথনে স্ট্রিং এর জন্য কিছু বিল্ট ইন মেথড/ ফাংশন আছে।

>>> my_string = “ This is an Example”

এখন আমরা যদি এই স্ট্রিংটিকে সম্পূর্ণ আপার/লোয়ার কেজ এ রূপান্তর করতে চাই তাহলে আমরা পাইথনে upper() বা lower() মেথড ব্যবহার করতে পারি।

>>> my_string.upper()>>> my_string.lower()

আবার আমরা যদি শুধু মাত্র প্রথম অক্ষর ক্যাপিটালাইজ করতে চাই তখন আমরা capitalize() ফাংশন ব্যবহার করি।

capitalize()

Capitalizes first word of the string.

Startswith ()

Checks if the string starts with a given string or an expected one.

endswith()

Checks if the string ends with a given string or an expected one.

len()

Checks the length of the string

max()

Finds the maximum alphabetical character from the string.

min()

Finds the minimum alphabetical character from the string.

upper()

Converts all the lowercase alphabets into upper case.

lower()

Converts all the uppercase alphabets into lower case

swapcase()

Converts all the uppercase alphabets into lowercase & vice versa.

split()

কোন স্ট্রিং এর শেষের সব হোয়াইট স্পেস রিমোভ করে দিতে আমরা split()ফাংশন ব্যবহার করা হয়।

এছাড়া ও পাইথনে অনেক স্ট্রিং মেথড আছে। সব গুলো মেথড দেখতে হলে ইন্টারপ্রেটারে

>>>dir(my_string) কমান্ড টাইপ করলেই হবে৷

স্ট্রিং স্লাইসিংঃ

রিয়েল ওয়ার্ল্ড প্রবলেমের ক্ষেত্রে স্ট্রিং স্লাইসিং অনেক বেশি ব্যবহৃত হয়। স্লাইসিং করে স্ট্রিং এর প্রত্যেকটা ক্যারেক্টর একসেস করা যায়।

>>> my_string = “I like Python!”

যেহেতু পাইথন জিরো বেজড্ বা জিরো থেকে কাউন্টিং শুরু করে আমরা প্রথম এলিমেন্ট কে জিরো থেকেই কাউন্ট করব।

I [space] l i k e [space] p y t h o n !

>>>my_string [0:1]‘I’

>>>my_string [0:11]‘I like Pyth’

>>>my_string [0:14]‘I like Python!’

>>>my_string [2:14]‘like Python’

>>>my_string [ : ]‘I like Python’

(এখানে লক্ষণীয় যে আমরা ম্যাক্সিমাম লিমিট যত দিচ্ছি পাইথন ঠিক তার আগের সংখায় পর্যন্ত কাউন্ট করছে)

স্ট্রিং ফরম্যাটিংঃ

স্ট্রিং ফরম্যাটিং হচ্ছে একটা বেজ স্ট্রিং এ অন্য একটি স্ট্রিং/ ইন্টিজার/ ফ্লোট ভ্যালু ইনসার্ট করা।

কয়েকটা উদাহরণ দেখলে তা সহজেই বোঝা যাবে।

>>>string = “ I like Python and Django”

এখন অন্য কেউ যদি বলে না আমি php আর laravel পছন্দ করি তখন আমাদের আবার পুরো সেনটেন্স লিখতে হবে। কিন্তু স্ট্রিং ফরম্যাটিং ব্যবহার করে আমরা এভাবে লিখতে পারি…

>>>string = “I like %s and %s” %(“Python”, “Django”)

অথবা,

>>>var1 = Python>>>var2 = Django>>> string = “ I like %s and %s “ %(var1, var2)

এখানে খেয়াল কর যে আমরা যতগুলো স্ট্রিং ইনপুট দিচ্ছি ততগুলো %s ব্যবহার করছি।

কিন্তু আমরা যদি সমান সংখ্যক ইনপুট না দেই তাহলে আমাদের কি এরর দেখাবে?

>>>string = “I like %s and %s “ %”

Python”Traceback (most recent call last):File “<string>”, line 1, in <fragment>TypeError; not enough arguments for formatting string

এরর দেখানোর কারণ হচ্ছে আমরা প্রয়োজনীয় স্ট্রিং পাস করিনি। অর্থাৎ যত সংখ্যক %s ব্যবহার করব সমান সংখ্যক স্ট্রিং ও পাস করতে হবে৷

একই ভাবে ইন্টিজার ও ফ্লোট ভ্যালু ও ইনসার্ট করা যায়। তবে সেক্ষেত্রে ভ্যালু গুলো কোট (“ “) এর ভেতর লিখা যাবে না। লিখলে সেগুলো স্ট্রিং টাইপের হয়ে যাবে।

--

--

Shahed Talukder

An Independent full-stack developer who works with Python & Javascript with two years of experience and can adjust to upcoming technologies.