The canonical, “Python is a great first language”, elicited, “Python is a great last language!”
– Noah Spurrier
স্বাগতম!!!
গত পর্বে পাইথনে ভ্যারিয়েবল ডিক্লেয়ার করা শিখেছিলাম। এবার একটু আলাদা কিছু শেখা যাক। এবার আমরা ফাংশন নিয়ে কিছুটা জানব। ধরা যাক আমার কাছে একটা ছাঁচ আছে যেটাতে কাদামাটি কিছুক্ষণ রেখে দিলে সেটা পুতুলের আকৃতি নেয় (সোজা কথায় মাটির পুতুল বানানোর ছাঁচ)। এই একটা ছাঁচ দিয়ে আমি যত ইচ্ছা পুতুল বানাতে পারবো। ফাংশন ঠিক এমনই। একটা ফাংশন দিয়ে একই কাজ বারবার করা যাক। একটা উদাহরণ দিলে ব্যাপারটা পরিষ্কার হবে আশা করি। সেই নামতার কথাটাই ধরা যাক! আমাদের আগের স্ক্রিপ্ট দিয়ে আমরা ৮ এর ঘরের নামতা লিখেছিলাম। কেমন হয় যদি আমরা যেকোনো ঘরের নামতা লিখতে পারি কেবল কোন ঘরের নামতা চাই তা উল্লেখ করেই? চলুন দেখে নেয়া যাকঃ
সোর্সঃ এখানে দেখুন…
আউটপুটঃ
৩-নম্বর লাইনটা খেয়াল করুন। def একটা কী-ওয়ার্ড যা পাইথনে নতুন ফাংশন তৈরি করতে ব্যাবহার করা হয়। আর () – ব্র্যাকেটের মধ্যে একটা আর্গ্যুমেন্ট দিয়ে আমরা এর মাধ্যমে ভ্যালু পাস করছি। একে বলে রিকোয়ার্ড আর্গ্যুমেন্ট। আরো তিন ধরনের আর্গ্যুমেন্ট আছে। কি-ওয়ার্ডেড আর্গ্যুমেন্ট, ডিফল্ট আর্গ্যুমেন্ট এবং ভ্যারিয়েবল লেন্থ আর্গ্যুমেন্ট।
চলুন প্রতিটার একটা করে উদাহরন দেখে নেয়া যাকঃ-
রিকোয়ার্ড আর্গ্যুমেন্টঃ
কি-ওয়ার্ডেড আর্গ্যুমেন্টঃ
ডিফল্ট আর্গ্যুমেন্টঃ
ভ্যারিয়েবল লেন্থ আর্গ্যুমেন্টঃ
এই হলো মোটামুটি পাইথনের ফাংশন (এটা অবশ্যই ব্যাসিক ধারণা)।
আরো জানতে সাথেই থাকুন। 😀 আর হ্যা অবশ্যই প্রচুর প্র্যাক্টিস করুন…
কোনো প্রশ্ন, খটকা বা পরামর্শ থাকলে কমেন্ট করতে পারেন। (গালি দিতে চাইলেও 😀 )
প্রশ্নঃ
- যদি ভ্যারিয়েবল লেন্থ আর্গ্যুমেন্ট-এ দুইটা * ব্যাবহার করি? মানে
def m_table(**number)
তাহলে?
ভাইয়া, এখানে %d দেওয়ার দরকারটা কি??!
(please reply)
তবে আপনি চাইলে অন্য নিয়মও অনুসরন করতে পারেন।
তাহলে আপনি %d, তারপর, int(input….) ইত্যাদি দিয়ে coding করতেছেন কেন…?????!???????
nice post