Site icon Trickbd.com

পাইথন প্রোগ্রামিং – স্ট্রিং ফরম্যাটিং – পর্ব ০৩ – ২য় খন্ড

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

আচ্ছা, মনে করি আমরা একটা ভ্যারিয়েবলের মধ্যে একটা Sentence রাখব। এবং আরো দুইটা ভ্যারিয়েবল এ আরো দুইটা Sentence রাখব। সবশেষে তিনটা ভ্যারিয়েবলকে প্রিন্ট করব। দেখা যাক একটা উদাহরনঃ-


>>> a = 'language'
>>> b = 'Bangla'
>>> print("My Mother",a,"is",b)
My Mother language is Bangla

এই একই কাজ আরো দুই ভাবে করা যায়।

% পদ্ধতিঃ-


>> a = 'Bangla'
>>> print("My Mother language is %s" %a)
My Mother language is Bangla

এটা বেশ মজার ছিল তাই না??

আমরা দশমিক সংখ্যার পরে কয়ঘর প্রিন্ট করব সেটা খুব সহজেই করা যায় এই % পদ্ধতিতে। যেমনঃ-


>>> a = 3.141659
>>> print('%.3f' %a)
3.142
>>> print('%.5f' %a)
3.14166

কী হল?? খুব সহজ। প্রথমে % দিয়ে . ( দশমিক ) দিয়ে কয় ঘর অবধি প্রিন্ট হবে সেটা দিতে হবে।

যেমনঃ- দিয়েছি 3 তারপর f এবং আগের মত বাকিটা। তাহলেই দশমিকের পড়ে ঘর অবধি প্রিন্ট হবে।

একটা কথা বলি আগে যে % পদ্ধতি দিয়ে স্ট্রিং ফরম্যাট করলাম এটা আমার মোটেই ভালো লাগে না।

তবে, একটা খুব সহজ এবং মজাদার একটা পদ্ধতি আলোচনা করি, সেটা হচ্ছে।


f {} পদ্ধতিঃ-

এটা খুব সহজ কাজ।


>>> a = "mother"
>>> b = "language"
>>> c = "Bangla"
>>> print(f"{c} is my {a} {b}!!")
Bangla is my mother language!!

এখানে “” দেবার আগে শুধু f  দিতে হবে এবং যখন সাথে ভ্যারিয়েবল দিতে হবে তখন {} দিয়ে তার মধ্যে ভ্যারিয়েবল নাম লিখে দিতে হবে।

স্ট্রিং join() :-


>>> a = "pen"
>>> b = "book"
>>> c = "khata"
>>> print(a+"~~~"+b+"~~~"+c)
pen~~~book~~~khata

উপরের এই কাজটাকে এত্ত ঝামেলার না করে খুব সহজেই করা যায়।


>>> a = "pen"
>>> b = "book"
>>> c = "khata"
>>> print("~~~".join((a,b,c)))
pen~~~book~~~khata

খুব সহজ কাজ। না বুঝলে জানাতে পারেন।

সকল common operartion:-


upper() :-              সমস্ত টেক্সটকে বড় হাতের লেখায় পরিবর্তন করে।

>>> a = 'Shovon'
>>> a.upper()
'SHOVON'

lower() :-              সমস্ত টেক্সটকে ছোট হাতের লেখায় পরিবর্তন করে।

>>> a = 'ShOVon'
>>> a.upper()
'shovon'

capitalize() :-              সমস্ত টেক্সট এর প্রথম লেটার কে বড় হাতের হিসেবে পরিবর্তন করে।

>>> a = 'shovon'
>>> a.upper()
'Shovon'

title() :-               সমস্ত টেক্সট এর সব ওয়ার্ড গুলোর প্রথম লেটারকে বড় হাতের করে।

>>> a = 'hello, this is shovon'
>>> a.title()
'Hello, This Is Shovon'

swapcase() :-              সমস্ত টেক্সট এর বড় হাতের লেটার কে ছোট হাতের এবং ছোট হাতের লেটার কে বড় হাতের করে।

>>> a = 'hIGhEr'
>>> a.swapcase
'HigHeR'

len() :-            একটি স্ট্রিং এর মোট কতগুলো ক্যারেক্টার আছে তা প্রিন্ট করে।

>>> a = "Shovon"
>>> len(a)
6

count() :-          একটি স্ট্রিং এ কোন ক্যারেক্টার কতবার আছে তা জানতে ব্যবহৃত হয় count()

>>> a = "accelerate"
>>> a.count('e')
3
>>> a.count('c')

2

a ভ্যারিয়েবল এ ‘e’ কতবার আছে তা জানতে variable.count(কে ক্যারেক্টার এর সংখ্যা জানতে চাই) দিলেই হবে।


index() :-    একটি স্ট্রিং এ কোন ক্যারেক্টার এর অবস্থান জানতে index() ব্যবহৃত হয়।

>>> a = "accelerate"
>>> a.index('c')
1

এখানে যদি এমন ক্যারেক্টার দেয়া হয় যা স্ট্রিং এ নেই তাহলে ইরর প্রিন্ট হয়। দিয়ে চেক করে দেখেন।

তবে তার জন্য ও একটা স্মার্ট সল্যুশন আছে।


find() :-

>>> a = "accelerate"
>>> a.find('r')
6
>>> a.find('z')
-1

এখানে স্ট্রিং এর ভেতর ‘z’ নেই তবুও ইরর না এসে -1 প্রিন্ট হয়েছে। তবে, find কিন্তু আরো অনেক স্মার্ট পরে আলোচনা করা হবে।

একটা ব্যাপার আগে উদাহরণ টা দেখে নেই।


>>> a = "accelerate"
>>> a.find('e')
3

এখানে ‘e’ 3 ইনডেক্স এ আছে তা ঠিক আছে কিন্তু আবার 5 এবং 9 ইন্ডেক্সেও তো আছে। তা হলে??

হ্যা, তার সল্যুশন হচ্ছে।


>>> a = "accelerate"
>>> a.find('e',4)
5

এখানে 4 ইন্ডেক্স এর পরে খুজে দেখেছে এবং 5 ইনডেক্স প্রিন্ট করেছে।


replace() :-


>>> a = "Hejjo"

>>> a.replace("j", "l")

'Hello'

প্রথম a (ভ্যারিয়েবল) তারপর .replace(যেটাকে রিপ্লেছ করতে হবে সেই ক্যারেক্টার, যেটা দ্বারা রিপ্লেছ করতে হবে)


strip() :- স্ট্রিং এর কোন ক্যারেক্টার কে ডিলিট করতে লাগে।


>>> a = 'Book'
>>> a.strip('B')
'ook'

split() :- স্ট্রিং এর সব ক্যারেক্টার গুলোকে আলাদা আলাদা করে লিস্ট এর ভেতর প্রিন্ট করে।

>>> a = "Hello Everyone, I am Echo"
>>> a.split(' ')
['Hello', 'Everyone,', 'I', 'am', 'Echo']

 


আজকে এখানেই শেষ হল ২য় খন্ড।আমি আসছি পরবর্তী পর্ব “লিস্ট ডাটা টাইপ” নিয়ে। সেই পর্যন্ত ভালো থাকুন সুস্থ থাকুন।


কোন প্রশ্ন বা গালি দেয়ার জন্য কমেন্ট বক্স উন্মক্ত। আর প্রাইভেটলি গালি দিতে চাইলে জানান ফেসবুকে। আর, যদি কমেন্ট এর রিপ্লে পেতে দেরি হয় তাহলে ফেসবুকে মেসেজ দিন । ধন্যবাদ!! আল্লাহ হাফেজ।

আরো ভালো আর্টিকেল পেতে চলে যান এই লিংক এ www.thebanglatech.xyz