পাঠসূচি
  1. 1পাইথন পরিচিতি ও ইনস্টলেশন (Python Introduction & Installation)
  2. 2Python Variables, Datatypes & Type Casting - পাইথন ভ্যারিয়েবল ও টাইপ কাস্টিং
  3. 3Python Input & Output Explained - পাইথন ইনপুট ও আউটপুট
  4. 4Python Operators & Expressions - পাইথন অপারেটর ও এক্সপ্রেশন
  5. 5Python if-elif-else Conditionals - পাইথন কন্ডিশনাল স্টেটমেন্ট
  6. 6Python Loops: for & while Explained - পাইথন লুপস: for ও while
  7. 7Python Functions: def, return, arguments - পাইথন ফাংশন ও এরগুমেন্টPlanned
  8. 8Python List, Tuple & Set Explained - পাইথন লিস্ট, টুপল ও সেটPlanned
  9. 9Python Dictionary Explained - পাইথন ডিকশনারি ব্যবহারPlanned
  10. 10Python Strings & String Operations - পাইথন স্ট্রিং ও অপারেশনPlanned
  11. 11Python File Handling Tutorial - পাইথন ফাইল হ্যান্ডলিংPlanned
  12. 12Python Error & Exception Handling - পাইথন এক্সেপশন হ্যান্ডলিংPlanned
  13. 13Python Lambda, map, filter, reduce - পাইথন ল্যাম্বডা ও ফাংশনাল প্রোগ্রামিংPlanned
  14. 14Python OOP: Class & Object Explained - পাইথন ক্লাস ও অবজেক্টPlanned
  15. 15Python Inheritance & Polymorphism - পাইথন ইনহেরিটেন্স ও পলিমরফিজমPlanned
  16. 16Python Modules & Packages Explained - পাইথন মডিউল ও প্যাকেজPlanned
  17. 17Python time, datetime & calendar - পাইথন টাইম, ডেটটাইম ও ক্যালেন্ডারPlanned
  18. 18Python JSON Handling - পাইথন JSON ব্যবহারPlanned
  19. 19Python Regular Expressions - পাইথন রেগুলার এক্সপ্রেশনPlanned
  20. 20Python Project: Mini Console App - পাইথন প্রজেক্ট: কনসোল অ্যাপ তৈরিPlanned

Python Input & Output Explained - পাইথন ইনপুট ও আউটপুট

Python · পাঠ 3 · বাংলা · ভিডিও বাংলায়

Python Input & Output Explained - পাইথন ইনপুট ও আউটপুটWatch on YouTube

ভিডিওটির ভাষা বাংলা।

Contents

1. Output in Python (print() ফাংশন)

কীভাবে স্ক্রিনে কিছু দেখানো যায়:

print() ফাংশন ব্যবহার করে পাইথনে স্ক্রিনে বিভিন্ন ধরনের ডেটা দেখানো যায়।

# স্ট্রিং (text) প্রিন্ট করা
print("Hello, World!")

# নাম্বার (integer, float) প্রিন্ট করা
print(100)
print(3.14159)

# ভ্যারিয়েবলের মান প্রিন্ট করা
message = "Python is fun!"
print(message)

# এক্সপ্রেশনের ফলাফল প্রিন্ট করা
x = 10
y = 5
print(x + y)  # আউটপুট: 15
print(f"Is x greater than y? {x > y}") # আউটপুট: Is x greater than y? True
  • print() হল পাইথনের সবচেয়ে বেসিক আউটপুট ফাংশন।
  • এর মাধ্যমে আপনি স্ক্রিনে টেক্সট, নাম্বার, ভ্যারিয়েবলের মান, এবং গাণিতিক বা লজিক্যাল এক্সপ্রেশনের ফলাফল দেখাতে পারেন।

একাধিক ভ্যালু প্রিন্ট:

name = "Alice"
age = 25
print("Name:", name, "| Age:", age)
  • এখানে আমরা কমা (,) দিয়ে একাধিক আর্গুমেন্ট print() ফাংশনে পাঠিয়েছি। Python ডিফল্টভাবে প্রতিটি আর্গুমেন্টের মধ্যে একটি স্পেস (space) দিয়ে আউটপুট দেখায়।

Escape Characters:

print("Line1\nLine2")         # Newline: নতুন লাইনে যায়
print("Name\tAge")            # Tab: একটি ট্যাব স্পেস দেয়
print("He said \"Hello\"")    # Double quotes: স্ট্রিং এর ভিতরে ডাবল কোট প্রিন্ট করে
print('She said \'Hi\'')      # Single quotes: স্ট্রিং এর ভিতরে সিঙ্গেল কোট প্রিন্ট করে
print("Path: C:\\Users\\Name") # Backslash: একটি ব্যাকস্ল্যাশ প্রিন্ট করে
  • \n: Newline (নতুন লাইন)
  • \t: Tab (ট্যাব স্পেস)
  • \": Double quote (ডাবল কোট)
  • \': Single quote (সিঙ্গেল কোট)
  • \\: Backslash (ব্যাকস্ল্যাশ)

sep এবং end প্যারামিটার:

# sep (separator) প্যারামিটার
print("Python", "is", "awesome", sep="-")
# আউটপুট: Python-is-awesome

print("apple", "banana", "cherry", sep=", ")
# আউটপুট: apple, banana, cherry

# end প্যারামিটার
print("Hello", end=" ") # লাইনের শেষে স্পেস প্রিন্ট হবে, নতুন লাইন নয়
print("World")          # এই লাইনটি আগের লাইনের পাশেই শুরু হবে
# আউটপুট: Hello World

print("First line", end="***\n") # লাইনের শেষে *** এবং নতুন লাইন প্রিন্ট হবে
print("Second line")
# আউটপুট:
# First line***
# Second line
  • sep: print() ফাংশনে একাধিক আইটেম থাকলে, তাদের মাঝে বিভাজক (separator) হিসেবে কী ব্যবহৃত হবে তা নির্দিষ্ট করে। ডিফল্ট ভ্যালু হল একটি স্পেস (" ")।
  • end: print() ফাংশনের আউটপুটের শেষে কী প্রিন্ট হবে তা নির্দিষ্ট করে। ডিফল্ট ভ্যালু হল একটি নতুন লাইন ক্যারেক্টার ("\n")।

2. Input in Python (input() ফাংশন)

ইনপুট নেওয়া:

name = input("What's your name? ")
print("Nice to meet you,", name)

age_str = input("How old are you? ")
print("You said you are " + age_str + " years old.")
  • input() ফাংশন ইউজারের কাছ থেকে কীবোর্ডের মাধ্যমে ডেটা গ্রহণ করে।
  • ফাংশনের আর্গুমেন্ট হিসেবে যে স্ট্রিং দেওয়া হয় (যেমন, "What's your name? "), সেটি ইউজারকে প্রম্পট হিসেবে দেখানো হয়।
  • input() ফাংশন ইউজারের দেওয়া সমস্ত ইনপুটকে সর্বদা একটি স্ট্রিং (string) হিসেবে রিটার্ন করে।

ইনপুটের টাইপ চেক করা:

data = input("Enter something: ")
print(f"You entered: {data}")
print(f"The type of your input is: {type(data)}")
# উদাহরণ: যদি ইউজার 123 টাইপ করে, আউটপুট হবে:
# You entered: 123
# The type of your input is: <class 'str'>
  • ইউজার সংখ্যা ইনপুট দিলেও, input() ফাংশন সেটিকে স্ট্রিং হিসেবেই গ্রহণ করে। গাণিতিক কাজের জন্য এটিকে সংখ্যায় রূপান্তর (type casting) করতে হয়।

3. Type Casting with Input

ইনপুট যেহেতু সবসময় স্ট্রিং (str) টাইপের হয়, তাই গাণিতিক হিসাব বা অন্যান্য প্রয়োজনে এই স্ট্রিংকে অন্য ডেটা টাইপে (যেমন integer, float) রূপান্তর করতে হয়। এই প্রক্রিয়াকে Type Casting বা Type Conversion বলে।

# স্ট্রিংকে পূর্ণসংখ্যায় (integer) রূপান্তর
age_str = input("Enter your age: ")
age_int = int(age_str) # স্ট্রিং "25" কে ইন্টিজার 25 এ রূপান্তর
print(f"Next year, you will be {age_int + 1} years old.")

# স্ট্রিংকে দশমিকে (float) রূপান্তর
height_str = input("Enter your height in meters (e.g., 1.75): ")
height_float = float(height_str) # স্ট্রিং "1.75" কে ফ্লোট 1.75 এ রূপান্তর
print(f"Your height is {height_float} meters.")

# এক লাইনে ইনপুট এবং টাইপ কাস্টিং
score = int(input("Enter your score: "))
print(f"Your score is: {score}")
  • int(): স্ট্রিংকে পূর্ণসংখ্যায় (integer) রূপান্তর করে।
  • float(): স্ট্রিংকে দশমিক সংখ্যায় (float) রূপান্তর করে।
  • যদি এমন কোনো স্ট্রিং দেওয়া হয় যা সঠিকভাবে সংখ্যায় রূপান্তর করা যায় না (যেমন, int("hello")), তাহলে ValueError দেখাবে।

4. Formatted Output

আউটপুটকে আরও সুন্দর এবং পাঠযোগ্য করে তোলার জন্য বিভিন্ন ফরম্যাটিং পদ্ধতি ব্যবহার করা হয়।

f-String (Formatted String Literals - Python 3.6+):

f-string পাইথনের আধুনিক এবং সবচেয়ে জনপ্রিয় স্ট্রিং ফরম্যাটিং পদ্ধতি।

name = "Bob"
age = 30
city = "New York"

print(f"My name is {name}, I am {age} years old, and I live in {city}.")
# আউটপুট: My name is Bob, I am 30 years old, and I live in New York.

# f-string এর মধ্যে এক্সপ্রেশনও ব্যবহার করা যায়
num1 = 10
num2 = 20
print(f"The sum of {num1} and {num2} is {num1 + num2}.")
# আউটপুট: The sum of 10 and 20 is 30.
  • f-string তৈরি করতে স্ট্রিং এর আগে f বা F লিখতে হয়।
  • ভ্যারিয়েবল বা এক্সপ্রেশনের মান স্ট্রিং এর মধ্যে বসানোর জন্য {} (curly braces) ব্যবহার করা হয়।

.format() মেথড:

f-string আসার আগে .format() মেথড বহুলভাবে ব্যবহৃত হতো এবং এখনও এটি কার্যকরী।

name = "Carol"
score = 95

# পজিশনাল আর্গুমেন্ট ব্যবহার করে
print("Name: {}, Score: {}".format(name, score))
# আউটপুট: Name: Carol, Score: 95

# ইনডেক্সড আর্গুমেন্ট ব্যবহার করে
print("Score: {1}, Name: {0}".format(name, score))
# আউটপুট: Score: 95, Name: Carol

# কীওয়ার্ড আর্গুমেন্ট ব্যবহার করে
print("Name: {n}, Score: {s}".format(n=name, s=score))
# আউটপুট: Name: Carol, Score: 95

5. Input & Output Combined Practice

আসুন ইনপুট, টাইপ কাস্টিং এবং ফরম্যাটেড আউটপুট ব্যবহার করে একটি ছোট প্রোগ্রাম তৈরি করি।

# ইউজারের কাছ থেকে দুটি সংখ্যা ইনপুট নেওয়া
print("--- Simple Calculator: Addition ---")
num_str1 = input("Enter the first number: ")
num_str2 = input("Enter the second number: ")

# ইনপুট স্ট্রিংগুলোকে ইন্টিজারে রূপান্তর করা
num_int1 = int(num_str1)
num_int2 = int(num_str2)

# যোগফল গণনা করা
sum_result = num_int1 + num_int2

# f-string ব্যবহার করে ফলাফল প্রিন্ট করা
print(f"The sum of {num_int1} and {num_int2} is: {sum_result}")

# উদাহরণ আউটপুট:
# --- Simple Calculator: Addition ---
# Enter the first number: 50
# Enter the second number: 25
# The sum of 50 and 25 is: 75

Summary

এই অধ্যায়ে আমরা পাইথনের বেসিক ইনপুট এবং আউটপুট ফাংশন সম্পর্কে জানলাম:

  • print() ফাংশন: স্ক্রিনে টেক্সট, নাম্বার, ভ্যারিয়েবলের মান এবং এক্সপ্রেশনের ফলাফল আউটপুট করার জন্য ব্যবহৃত হয়।
    • একাধিক আইটেম কমা (,) দিয়ে আলাদা করে প্রিন্ট করা যায়।
    • sep আর্গুমেন্ট একাধিক আইটেমের মধ্যে বিভাজক (separator) নির্দিষ্ট করে (ডিফল্ট: স্পেস)।
    • end আর্গুমেন্ট লাইনের শেষে কী প্রিন্ট হবে তা নির্দিষ্ট করে (ডিফল্ট: নতুন লাইন \n)।
  • input() ফাংশন: ইউজারের কাছ থেকে কীবোর্ডের মাধ্যমে ডেটা ইনপুট নেয়।
    • এটি সর্বদা একটি স্ট্রিং (str) রিটার্ন করে, এমনকি ইউজার সংখ্যা ইনপুট দিলেও।
  • Type Casting: input() থেকে প্রাপ্ত স্ট্রিংকে গাণিতিক বা অন্যান্য কাজের জন্য int(), float() ইত্যাদি ফাংশন ব্যবহার করে উপযুক্ত ডেটা টাইপে রূপান্তর করা হয়।
  • Formatted Output: f-string (যেমন f"Value: {variable}") অথবা .format() মেথড ব্যবহার করে আউটপুটকে সুন্দর এবং সহজে পাঠযোগ্য ফরমেটে সাজানো যায়।
  • Escape Characters: বিশেষ ক্যারেক্টার যেমন নতুন লাইন (\n), ট্যাব (\t), বা কোটেশন মার্ক (\", \') স্ট্রিং এর মধ্যে প্রিন্ট করার জন্য ব্যবহৃত হয়।

Homeworks

PY3H1: Number Swap

  • ইউজারের কাছ থেকে দুটি সংখ্যা (A এবং B) ইনপুট নিন।
  • একটি অস্থায়ী ভ্যারিয়েবল (temp variable) ব্যবহার করে অথবা ব্যবহার না করে সংখ্যা দুটির মান নিজেদের মধ্যে অদলবদল (swap) করুন।
  • অদলবদলের আগে এবং পরে সংখ্যা দুটির মান প্রিন্ট করুন।
    • উদাহরণ: Before: A=10, B=20 -> After: A=20, B=10

PY3H2: BMI Calculator

  • ইউজারের কাছ থেকে তার উচ্চতা (মিটারে) এবং ওজন (কেজিতে) ইনপুট নিন।
  • BMI (Body Mass Index) গণনা করুন। BMI = ওজন / (উচ্চতা × উচ্চতা)।
  • f-string ব্যবহার করে ইউজারের BMI সুন্দরভাবে ফরম্যাট করে প্রিন্ট করুন (দশমিকের পর দুই ঘর পর্যন্ত দেখাতে পারেন, যেমন: Your BMI is: 22.86)।
    • (Hint: f"{bmi_value:.2f}" ব্যবহার করে দশমিকের পর দুই ঘর প্রিন্ট করা যায়।)

PY3H3: Simple Greeting Program

  • ইউজারের কাছ থেকে তার নাম (name) এবং পছন্দের রঙ (favorite color) ইনপুট নিন।
  • input() ফাংশনের প্রম্পটে অর্থপূর্ণ প্রশ্ন ব্যবহার করুন।
  • f-string ব্যবহার করে একটি ব্যক্তিগত শুভেচ্ছা বার্তা তৈরি করুন।
    • উদাহরণ: যদি নাম “Alice” এবং পছন্দের রঙ “blue” হয়, তাহলে আউটপুট হতে পারে: “Hello Alice! I see your favorite color is blue. That’s a great choice!”

কোনো ভুল পেয়েছেন? LinkedIn-এ জানান।