পাইথন প্রোগ্রামিং/ইন্টারঅ্যাক্টিভ মোড


পাইথনের দুটি প্রাথমিক মোড রয়েছে: স্ক্রিপ্ট ও ইন্টারঅ্যাক্টিভ। স্বাভাবিক মোডে পাইথন ইন্টারপ্রেটারে স্ক্রিপ্টকৃত পূর্ণ .py ফাইল রান হয়। ইন্টারঅ্যাক্টিভ মোড হলো কমান্ড লাইন শেল যেখানে প্রতিটি স্টেটমেন্টের তাৎক্ষণিক প্রতিক্রিয়া পাওয়া যায় এবং পূর্বের স্টেটমেন্টগুলোর ফলাফল একটি সক্রিয় মেমোরিতে থাকে।। ইন্টারপ্রেটার নতুন লাইন প্রোগ্রামটি আংশিক ও সম্পূর্ণ উভয়ভাবেই রান হয়।

পরীক্ষা করে দেখার জন্য এবং সিনট্যাক্সের বিভিন্নতা দেখার জন্য ইন্টারঅ্যাক্টিভ মোড বেশ ভালো।

ম্যাকওএস অথবা লিনাক্সে টার্মিনাল খুলুন এবং লিখুন "python". উইন্ডোজে কমান্ড প্রম্পটে "py" লিখুন, অথবা টাস্ক বার/অ্যাপ মেনুতে "Python (command line)", "IDLE" অথবা এধরনের প্রোগ্রাম সিলেক্ট করার মাধ্যমে ইন্টারঅ্যাক্টভ পাইথন সেশন শুরু করুন। আইডিএলই একটি গুই সফটওয়্যার যেখানে ইন্টারঅ্যাক্টিভ মোড এবং ফাইল সম্পাদনা ও রান করার ব্যবস্থা উভয়ই রয়েছে।

পাইথন নিচের মতো কিছু প্রিন্ট করবে:

$ python
Python 3.0b3 (r30b3:66303, Sep  8 2008, 14:01:02) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

(পাইথন রান না হলে, আপনার পাইথন ইনস্টল করা আছে কিনা এবং পাথ সঠিক দেওয়া আছে কিনা তা দেখুন। পাইথন যেভাবে পাবেন দেখুন।)

পাইথনে >>> দ্বারা বোঝায় আপনি ইন্টারঅ্যাক্টিভ মোডে রয়েছেন। ইন্টারঅ্যাক্টিভ মোডে আপনি যা লিখবেন তা সাথে সাথেই রান হবে। 1+1 লিখে দেখুন, পাইথন ফলাফল দেবে 2। ইন্টারঅ্যাক্টিভ মোড পাইথন কী করবে তা পরীক্ষা করে দেখার সুযোগ দেয়। যদি আপনার নতুন পাইথন স্টেটমেন্ট পরীক্ষা করে দেখার প্রয়োজন হয় তবে ইন্টারঅ্যাক্টিভ মোডে গিয়ে সহজেই তা করতে পারবেন।

একটি ইন্টারঅ্যাক্টিভ পাইথন সেশন:

>>> 5
5
>>> print(5*7)
35
>>> "hello" * 4
'hellohellohellohello'
>>> "hello".__class__
<type 'str'>

তবেইন্তেরপ্রেতেরক্টিভ মোডে দ্বীধা এড়াতে আপনার সাচেতন থাকতে হবে। উদাহরণসরূপ, নিচের প্রোগ্রামিং সঠিক পাইথন স্ক্রিপ্ট:

if 1:
  print("True")
print("Done")

ইন্টারঅ্যাক্টিভ মোডে এটি লিখতে গিয়ে ফলাফল দেখে আপনি আশ্চর্য হতে পারেন:

 >>> '''if 1:'''
 ...   '''print("True")'''
 ... '''print("Done")'''
   File "<stdin>", line 3
     print("Done")
         ^
 SyntaxError: invalid syntax

এখানে ইন্টারপ্রেটারটি বলছে যে দ্বিতীয় প্রিন্ট স্টেটমেন্টের ইন্ডেন্টেশনটি অনাকাঙ্ক্ষিত। আসলে এখানে পরের প্রিন্ট স্টেটমেন্ট লেখার লাগে প্রথম স্টেটমেন্ট ("if" স্টেটমেন্ট) শেষ করতে একটি খালি লাইন দিতে হবে। অঅর্থাৎ নিচের মতো করে ইনপুট দিতে হবে:

if 1:
  print("True")
 
print("Done")

তাহলে নিচের মতো ফলাফল পাওয়া যাবে:

>>> if 1:
...   print("True")
...
True
>>> print("Done")
Done
>>>

ইন্টারঅ্যাক্টিভ মোড সম্পাদনা

পাইথন প্রোগ্রাম থেকে বের হয়ে যাওয়ার পরিবর্তে ইন্টারঅ্যাক্টিভ সেশনে যেতে -i ফ্লাগ ব্যবহার করতে পারেন। এভাবে অনেক সহজে ডিবাগিং ও প্রোটোটাইপিং করা সম্ভব।

python -i hello.py