পাইথনে রিকার্শন

রিকারশনঃ কোন কিছু যদি নিজেকে নিজে পুনরায় ডাকে, তাই হচ্ছে রিকারশন। এটি মূলত একটা প্রসেস, যেখানে প্রথমে কোন একটা সমস্যার ছোট এবং সহজ সমাধান বের করা হয়। তারপর ঐ ছোট সমাধানের উপর ভিত্তি করে বাকি অংশ গুলো সমাধান করা হয়। সেলুনে গেলে যখন আমরা দাঁড়াই, তখন সামনে পেছনে দুই পাশেই আয়না থাকে। এর ফলে নিজের … Read more

পাইথনে লিঙ্কড লিস্ট রিপ্রেজেন্টেশন এবং ইমপ্লিমেন্টেশন

ল্লিঙ্কড লিস্ট হচ্ছে লিস্টের মত আরেকটা ডেটা স্ট্র্যাকচার। লিঙ্কড লিস্টে আইটেম গুলো একটা আরেকটার সাথে কানেক্টেড থাকে। অনেকটা চেইনের মত। লিঙ্কড লিস্ট মূলত অনেক গুলো নডের সমষ্টি। এখন জিজ্ঞেস করতে পারেন নড কি। নডকে চিন্তা করতে পারেন একটা বক্সের মত। যার মধ্যে দুইটা খোপ থাকে। এই খোপের একটাতে থাকে ডেটা, আরেকটাতে থাকে পরবর্তী ডেটা মেমরির … Read more

পাইথনে গ্রাফ রিপ্রেজেন্টেশন এবং ইমপ্লিমেন্টেশন

গ্রাফঃ আমাদের এমন কিছু ডেটা থাকতে পারে, যেগুলোকে ক্রমানুসারে রাখা যায় না। কিন্তু একটা ডেটা আরেকটা ডেটার সাথে র‍্যানন্ডমলি কানেক্টেড। এমন ডেটা স্টোর করার জন্য দরকার পড়ে গ্রাফ ডেটা স্ট্রাকচারের। যেমন ম্যাপের কথা ধরতে পারি। ম্যাপের প্রতিটা শহর একটা আরেকটার সাথে কানেক্টেড থাকে। এই ম্যাপ ডেটার মত ডেটা গুলো কম্পিউটারে স্টোর করার জন্য যে ডেটা … Read more

পাইথনে ট্রি – ট্রি / Tree ডেটা স্ট্রাকচার

আমরা স্ট্যাটিক ডেটা স্ট্রাকচার লিস্ট, স্ট্যাক, কিউ ইত্যাদি দেখেছি। দেখেছি ডাইনামিক ডেটা স্ট্রাকচার যেমন লিঙ্কড লিস্ট। যা থেকে সহজেই ডাইন্যামিক্যালি কোন আইটেম এড বা রিমুভ করা যায়। এগুলো দিয়ে অনেক ধরনের সমস্যা সমাধান করা যায়। তবে এগুলোর একটা সমস্যা হচ্ছে এই ডেটা স্ট্রাকচার গুলো হচ্ছে সিকোয়েনশিয়াল ডেটা স্ট্র্যাকচার। মানে ডেটা গুলো সিরিয়ালি স্টোর করে রাখে। … Read more

পাইথনে কিউ – কিউ / Queue ডেটা স্ট্রাকচার

কিউঃ স্ট্যাকের মত আরেকটা লিনিয়ার ডেটা স্ট্যাকচার হচ্ছে কিউ। কিউ FIFO রুল ফলো করে ডেটা রাখা হয়। FIFO এর পূর্ণরুপ হচ্ছে First In First Out। মানে যে আইটেমটা সবার আগে রাখব, তাই সবার আগে বের করতে হবে। সৎ ডেটা স্ট্র্যাকচার! ঘুষের কারবার নেই! দৈনন্দিন জীবনে প্রায় প্রতিদিনই আমাদের অজান্তেই কিউ ডেটা স্ট্র্যাকচার ব্যবহার করছি। পিজ্জা … Read more

পাইথনে স্ট্যাক – স্ট্যাক / Stack ডেটা স্ট্রাকচার

স্ট্যাক কিঃ স্ট্যাক / Stack হচ্ছে লিনিয়ার ডেটা স্ট্র্যাকচার। স্ট্যাক কিছুটা অ্যারের মতই। তবে এখানে LIFO স্ট্র্যাকচারে ডেটা গুলো রাখা হয়। LIFO এর পূর্ণরুপ হচ্ছে Last In First Out। যেমন ধরি প্লেটের স্ট্যাক। রান্না ঘরে সাধারণত প্লেট গুলো পরিষ্কার করার পর একটার উপর আরেকটা রাখা হয়। প্লেটের স্ট্যাকে যে প্লেটটা সবার শেষে রাখে, তাই তো … Read more

পাইথনে CSV ফাইল পড়া

CSV ফাইল পড়ার জন্য অনেক গুলো মডিউল রয়েছে। এর মধ্যে রয়েছে বিল্টইন মডিউল csv। ইউনিকোড CSV ফাইল পড়ার জন্য রয়েচ্ছে unicode CSV মডিউল, যা ইন্সটল করে নিতে হয়। মডিউল কিভাবে ইন্সটল করে নিতে হয়, তা লেখা রয়েছে মডিউল এবং প্যাজেজ লেখাতে। এরপর ও সংক্ষেপে বলি। প্রথমে আমাদের পাইপাই ইন্সটল করে নিতে হবে। পাই পাই পাওয়া … Read more

পাইথন অপারেটর

আগের অধ্যায় গুলোতে আমরা একটা ভ্যারিয়েবলে কোন ভ্যালু এসাইন করতে সমান চিহ্ন (=) ব্যবহার করেছি। এই সমান চিহ্ন হচ্ছে একটা অপারেটর, যাকে বলা হয় এসাইন অপারেটর। এছাড়া প্রথম অধ্যায় আমরা যোগ, বিয়োগ, গুণ, ভাগ, ইত্যাদি করা শিখেছি। এগুলোও হচ্ছে অপারেটর। এগুলোকে বলা হয় এরিথম্যাটিক অপারেটর। এরিথম্যাটিক অপারেটর, এসাইন অপারেটর ছাড়াও আরো অনেক ধরণের অপারেটর রয়েছে। … Read more

পাইথন ব্যবহার করে গ্রাফিক্যাল ইউজার ইন্টারফেস অ্যাপ বা সফটওয়ার তৈরি

পাইথন ব্যবহার করে গ্রাফিক্যাল ইউজার ইন্টারফেস অ্যাপ বা সফটওয়ার তৈরি করতে পারি আমরা। এ জন্য রয়েছে অনেক গুলো ফ্রেমওয়ার্ক। জনপ্রিয় কয়েকটি হচ্ছে Kivy, PyQt, Pyforms ইত্যাদি। পাইথন ব্যবহার করে ওয়েব অ্যাপ ডেভেলপমেন্ট করার জন্য রয়েছে Django বা Flask এর মত ফ্রেমওয়ার্ক। এখানে আমি দেখাবো কিভাবে Kivy ব্যবহার করতে হয়। Kivy হচ্ছে ক্রস প্লাটফর্ম পাইথন অ্যাপলিকেশন ডেভেলপমেন্ট ফ্রেমওয়ার্ক। একই … Read more

পাইথন শেখার জন্য অন্যান্য রিসোর্স

পাইথন নিয়ে মাকসুদুর রহমান মাটিনের একটি বই রয়েছে নাম সহজ ভাষায় পাইথন ৩। পাইথন সম্পর্কে জানতে ঐ বইটি পড়তে পারেন। রকমারিতে পাওয়া যাবে এই ঠিকানায়।     খুব সহজে প্রোগ্রামিং সম্পর্কে ধারণা পেতে হুকুপাকুশের প্রোগ্রামিং শিক্ষা দেখতে পারেন।   howtocode.com.bd এও পাইথন নিয়ে রয়েছে দারুণ কিছু লেখা।