কম্পিউটার টিউটোরিয়াল

পাইথনে %s মানে কী?

আপনি কি একটি পাইথন স্ট্রিংয়ে একটি ভ্যালু যোগ করতে চান? আপনাকে %s অপারেটর চেয়ে আর কিছু খুঁজতে হবে না। এই অপারেটর আপনাকে একটি স্ট্রিংয়ের ভিতরে একটি ভ্যালু ফরম্যাট করতে দেয়। %s সিনট্যাক্স কনক্যাটেনেশন অপারেটর চেয়ে আরও এলিগ্যান্ট যার সাথে আপনি পরিচিত হতে পারেন।

এই গাইডে, আমরা %s সিম্বল কী বোঝায় এবং কীভাবে কাজ করে তা আলোচনা করব। আমরা এই অপারেটরের একটি উদাহরণ রান করব যাতে আপনি আপনার কোডে এটি কীভাবে ব্যবহার করবেন তা শিখতে পারেন।

%s অপারেটর কী?

%s অপারেটর একটি স্ট্রিংয়ের ভিতরে অন্য একটি স্ট্রিং যোগ করে।

এখানে, আমরা একটি প্রোগ্রাম লিখব যা ক্যালকুলেট করে একটি গাড়ি গন্তব্যে পৌঁছানোর জন্য গড়ে কত গতিতে যাওয়া হয়েছে। এই ইনফরমেশন ক্যালকুলেট করতে নিচের ফর্মুলা ব্যবহার করি:

speed = distance / time

শুরুতে ইউজার থেকে ডিস্ট্যান্স, গন্তব্যে পৌঁছানোর সময়, এবং কোথাও যাচ্ছিলেন সেটি জিজ্ঞেস করি:

distance = input("How far did you travel (in miles)? ")
time = input("How long did it take you to reach your destination (in hours)? ")
where = input("Where were you going? ")

এরপর, আমরা ইউজারের গড় স্পিড ক্যালকুলেট করি:

speed = round(float(distance) / float(time), 2)

আমরা "distance" এবং "time"-এর ভ্যালু ফ্লোটিং পয়েন্ট নম্বরে কনভার্ট করেছি যাতে আমরা সে ভ্যালুগুলো ব্যবহার করে ম্যাথম্যাটিক্যাল অপারেশন পারফর্ম করতে পারি। আমরা আমাদের স্পিড ক্যালকুলেশন এর ফলাফলও দুটি দশমিক স্থানে রাউন্ড করেছি।

এখন যেহেতু আমরা এই ভ্যালু ক্যালকুলেট করেছি, আমরা পাইথন কনসোলে ইউজারকে তাদের গড় স্পিড জানাব। স্ট্রিং ফরম্যাটিং ব্যবহার করে এটি করতে পারি:

print("On your journey to %s, you drove at an average speed of %s miles per hour." % (where, speed))

আমাদের %s সিনট্যাক্সের তিনটি পার্ট রয়েছে:

  • %s অপারেটর হলো যেখানে স্ট্রিং ভ্যালু যোগ করা হয়।
  • % (where, speed) হলো যেখানে আমরা স্পেসিফাই করি কোন ভ্যালুগুলো আমাদের স্ট্রিংয়ে যোগ করা উচিত।

আপনি স্ট্রিংয়ে যোগ করতে চান যেসব ভ্যালুর সংখ্যা, সেটি অবশ্যই স্ট্রিংয়ের শেষে % অপারেটরের পরে প্যারেনথেসিসে স্পেসিফাই করা ভ্যালুর সংখ্যায় সমান হতে হবে। অন্যথায়, আপনি "TypeError: not enough arguments for format string" এরর সম্মুখীন হবেন।

আমাদের কোডে, আমরা আমাদের স্ট্রিংয়ে দুটি ভ্যালু যোগ করছি। আমরা %s অপারেটর দুবার ব্যবহার করেছি এবং স্ট্রিংয়ের শেষে % সাইনের পরে প্যারেনথেসিসে দুটি ভ্যালু রয়েছে।

আমাদের প্রোগ্রাম রান করি:

How far did you travel? 63
How long did it take you to reach your destination? 2
Where were you going? London
On your journey to London, you drove at an average speed of 31.5 miles per hour.

আমাদের কোড সফলভাবে আমাদের গড় স্পিড ক্যালকুলেট করল।

%s অপারেটর অটোমেটিক্যালি একটি ভ্যালু স্ট্রিংয়ে কনভার্ট করে। এর মানে আমাদের "speed"-এর সাথে যুক্ত ডেটা টাইপ পরিবর্তন করতে হবে না যখন আমরা আমাদের ভ্যালু ফরম্যাট করি।

% স্ট্রিং ফরম্যাটিং সিনট্যাক্স

%s অপারেটরের চেয়ে % স্ট্রিং ফরম্যাটিং সিনট্যাক্সে আরও অনেক কিছু রয়েছে। আপনি % সিনট্যাক্স ব্যবহার করে একটি স্ট্রিংয়ে নম্বরও ফরম্যাট করতে পারেন।

% ফরম্যাটিং সিনট্যাক্স ব্যবহার করে নম্বর ফরম্যাট করার বিষয়ে আরও জানতে, পাইথন ডকুমেন্টেশন ফর স্ট্রিং ফরম্যাটিং পড়ুন। আমরা % অপারেটর ব্যবহার করে দুটি দশমিক স্থানে ভ্যালু রাউন্ড করার একটি টিউটোরিয়ালও লিখেছি।

স্ট্রিং ফরম্যাটিং-এর নতুন মেথড

format() সিনট্যাক্স পাইথন ২.৬-এ ইন্ট্রোডিউস হওয়ার সাথে সাথে, % স্ট্রিং ফরম্যাটিং অপারেন্ড অনেক ডেভেলপারের কাছে কম পপুলার হয়েছে।

এর কারণ হলো ফরম্যাটিং সিনট্যাক্সော်ိারgeblich বেশি পাওয়ারফুল। কীভাবে, format() সিনট্যাক্স ব্যবহার করা খুব কঠিন নয়। নিচের স্টেটমেন্ট বিবেচনা করুন:

print("On your journey to {}, you drove at an average speed of {} miles per hour.".format(where, speed))

এই স্টেটমেন্ট সেম মেসেজ প্রিন্ট করে যা আমরা আগে জেনারেট করেছিলাম। আমরা .format() সিনট্যাক্স ব্যবহার করেছি "where" এবং "speed" ভ্যালু আমাদের স্ট্রিংয়ে যোগ করতে।

.format() সিনট্যাক্স আপনাকে প্রতিটি ভ্যালু যেটি আপনি একটি স্ট্রিংয়ে যোগ করতে চান তার জন্য নাম সেট করতে দেয়। এই ফিচারগুলো %s সিনট্যাক্স অফার করে না।

পাইথন ৩-এ, f স্ট্রিং % সিনট্যাক্সের অল্টারনেটিভ হিসেবে ইন্ট্রোডিউস করা হয়েছে। F স্ট্রিং স্ট্রিং লিটারেল ব্যবহার করে একটি ভ্যালু বা এক্সপ্রেশন স্ট্রিংয়ে এম্বেড করার একটি সহজ উপায়। f স্ট্রিং সম্পর্কে আরও জানতে আমাদের পাইথন ৩ f স্ট্রিং আর্টিকেল পড়ুন।



উপসংহার

%s অপারেটর আপনাকে একটি পাইথন স্ট্রিংয়ে একটি ভ্যালু যোগ করতে দেয়। %s ইন্ডিকেট করে যে আপনি একটি স্ট্রিং ভ্যালু একটি স্ট্রিংয়ে যোগ করতে চান। % অপারেটর অন্যান্য কনফিগারেশন যেমন %d সহ ব্যবহার করা যায় বিভিন্ন টাইপের ভ্যালু ফরম্যাট করতে।

আধুনিক পাইথন ভার্সনে, % সিনট্যাক্স f স্ট্রিং এবং format() মেথডেরliwoরে কম ব্যবহার হয়।

এখন আপনি প্রফেশনাল পাইথন ডেভেলপারের মত আপনার কোডে %s অপারেটর ব্যবহার করার নলেজ রাখেন!

  1. এক্সটেন্ডেড নেটওয়ার্ক (Extended Network) বলতে কী বোঝায়?

  2. VGA মানে কী? ভিডিও গ্রাফিক্স অ্যারের সম্পূর্ণ পরিচিতি

  3. এলটিই (LTE) মানে কী?

  4. SNMP কী বোঝায়?