পাইথন সাধারণ উদ্দেশে(general-purpose) ব্যবহৃত একটি শক্তিশালী প্রোগ্রামিং ভাষা। সুতরাং ওয়েব ডেভেলপমেন্ট(যেমন-Django এবং Bottle) থেকে শুরু করে বৈজ্ঞানিক ও গাণিতিক হিসাব-নিকাশ(যেমন-Orange, SymPy, NumPy) এবং এমনকি ডেস্কটপ গ্রাফিক্যাল ইউজার ইন্টারফেসেও(যেমন-Pygame, Panda3D) এটার ব্যপক ব্যবহার রয়েছে।
গঠন(Syntax) খুবই স্বচ্ছ এবং কোড এর দৈর্ঘ্যও ছোট হয়। ফলে পাইথন-এ কাজ করা আপনার কাছে কিছুটা মজাদার কৌতুকের মত মনে হবে। কেননা এটি আপনাকে কোডের গঠনের দিকে নজর না দিয়ে সমস্যা নিয়ে চিন্তা করতে সহায়তা করবে।এই প্রোগ্রামিং ল্যাঙ্গুয়েজ সহজে বোধগম্য। তাছাড়া এটি একটি হাই-লেভেল,পোর্টেবল, অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং ল্যাঙ্গুয়েজ।
পাইথন প্রোগ্রামিং ভাষার নামকরণ করা হয়েছে ব্রিটিশ রম্য অনুষ্ঠান “মন্টি পাইথন ফ্লাইং সারকাসের” নামে।
পাইথন এর বিভিন্ন ভার্সন এবং প্রকাশকাল
ভার্সন প্রকাশকালঃ
পাইথন 1.0 (প্রথম স্টান্ডার্ড প্রকাশনী)-১৯৯৪ এর জানুয়ারি
পাইথন 1.6 ( শেষ মাইনর ভার্সন)-২০০০ সালের ৫-এ সেপ্টেম্বর
পাইথন 2.0 (লিস্ট-list এর সূচনা)-২০০০ সালের ১৬ই অক্টোবর
পাইথন 2.7 (শেষ মাইনর ভার্সন)-২০১০ সালের ৩-এ জুলাই
পাইথন 3.0 (ডেপ্রিকেটেড কন্সট্রাক্ট এবং মডিউল রিমুভে জোর প্রদান )-২০০৮ সালের ৩-এ সেপ্টেম্বর
পাইথন 3.5 (নিরাপত্তা সংশোধন)-২০১৫ সালের ১৩-ই সেপ্টেম্বর
পাইথন 3.6 (শেষ আপডেট ভার্সন )-২০১৬ সালের ২৩-এ ডিসেম্বর
আবিষ্কার ও ইতিহাস ঃ
১৯৮০ দশকের শেষের দিকে পাইথনের জন্ম দেন নেদারল্যান্ডের সিডব্লিউআই’র গবেষক গুইডো ভ্যান রস্যিউম।[৪] মূলত এবিসি’র উত্তরসূরী হিসেবে পাইথনের আবির্ভাব হয়েছে যা এক্সেপশন হ্যান্ডলিং করতে এবং অ্যামিবা অপারেটিং সিস্টেমের সাথে কাজ করতে সক্ষম ছিল।[৫] ভ্যান রস্যিউম পাইথনের প্রধান লেখক এবং বর্তমানে পাইথনের উন্নয়নে তিনিই প্রধানত নেতৃত্ব দিচ্ছেন। তাকে পাইথনের আজীবন পরিচালক হিসেবে সম্মান দেয়া হয়েছে।
১৯৯১ সালে ভ্যান রস্যিউম পাইথনের কোড প্রকাশ করেন (ভার্শন ০.৯.০)।[২] পাইথন ডিজাইনের এই ধাপেই ক্লাস ইনহেরিটেন্স, এক্সেপশন হ্যান্ডলিং, ফাংশন, ও প্রধান ডাটা টাইপ list, dict, str প্রভৃতি সংযুক্ত ছিল। এই প্রাথমিক প্রকাশে ছিল মডুলা-৩ থেকে ধার করা মডিউল সিস্টেম; ভ্যান রোসাম এই মডিউলকে “পাইথনের মূল প্রোগ্রামিং ইউনিটের একটি” আখ্যায়িত করেছেন।[৪] পাইথনের এক্সেপশন মডেলটিও অনেকটা মডুলা-৩’র মত যাতে কেবল অতিরিক্ত else যুক্ত হয়েছে।[৫] ১৯৯৪ সালে পাইথনের প্রধান ফোরাম comp.lang.python গঠিত হয়, এবং পাইথনের ব্যবহারকারীদের জন্য তা মাইলফলক হিসেবে চিহ্নিত হয়।
১৯৯৪ সালের জানুয়ারি পাইথন ১.০ সংস্করনে প্রবেশ করে। এই সংস্করনে যে প্রধান বিষয়াদি যুক্ত হয় তা হলো ফাংশনাল প্রোগ্রামিং টুলস lambda, map, filter ও reduce। ভ্যান রস্যিউম বলেন “পাইথন lambda, reduce(), filter() ও map() অধিকার করেছে, (আমি বিশ্বাস করি) একজন লিস্প হ্যাকারের কাছ থেকে যে নিজেকে এগুলো থেকে বঞ্চিত মনে করছিল এবং কর্মক্ষম প্যাচগুলো সরবরাহ করেছে।”[৬] এর প্রধান অবদানকারী ছিলেন অমৃত প্রেম; এবং এর প্রকাশ নোটে সে সময় কোন লিস্প প্রোগ্রামের উত্তরসূরী হওয়ার উল্লেখ করা হয়নি।
সিডব্লিউআই থেকে প্রকাশিত সর্বশেষ সংস্করন হচ্ছে পাইথন ১.২। ১৯৯৫ সালে ভ্যান রস্যিউম ভার্জিনিয়ার কর্পোরেশন ফর ন্যাশনাল রিসার্চ ইনিশিয়েটিভস (সিএনআরআই) প্রতিষ্ঠান থেকে পাইথনের ওপর তার কাজ চালিয়ে যেতে থাকেন এবং এখান থেকে সফটওয়ারটির কয়েকটি সংস্করন বের করেন।
১.৪ সংস্করনের মধ্যে পাইথনের কিছু নতুন বৈশিষ্ট্য যোগ করা হয়। এর মধ্যে উল্লেখযোগ্য হলো মডুলা-৩ থেকে উদ্বুদ্ধ হয়ে গ্রহণ করা নতুন কিওয়ার্ড আর্গুমেন্ট (keyword argument) (যা কমন লিস্প এর কিওয়ার্ড আর্গুমেন্টের সাথে অনেকটা মেলে), এবং জটিল সংখ্যার জন্য অভ্যন্তরীন সমর্থন। এছাড়া তথ্য লুকানোর জন্যও একটি বিশেষ ব্যবস্থা ছিল, যদিও তা তেমন কঠিন কিছু ছিলনা।[৭]
সিএনআরআই তে থাকাকালীন ভ্যান রস্যিউম কম্পিউটার প্রোগ্রামিং ফর এভরিবডি (সিপি৪ই) উদ্যোগ গ্রহণ করেন, যাতে আরো অনেক মানুষ কম্পিউটার প্রোগ্রামিং এর সুবিধা গ্রহণ এবং অল্প মৌলিক প্রোগ্রামিং জ্ঞানের (ইংরেজি ও গণিতের জন্য সাধারণ যে জ্ঞান থাকা প্রয়োজন) মাধ্যমে ছোটখাট সমস্যা সমাধান করতে পারে। পাইথন এক্ষেত্রে কেন্দ্রীয় ভূমিকা পালন করেছে যার মূল কারণঃ এর পরিষ্কার সিনট্যাক্সের প্রতি মনোযোগ, এর ব্যবহার উপযোগিতা এবং সিপি৪ই এর লক্ষ্যের সাথে পাইথনের পূর্বসূরী এবিসির লক্ষ্যের মিল। এই প্রকল্পের অর্থায়ন করে DARPA।[৮] এই ২০০৭ সাল পর্যন্ত সিপি৪ই প্রকল্প নিস্ক্রিয় রয়েছে এবং অন্যদিকে পাইথন সাধারণ মানুষের জন্য সহজে শিখার মত প্রোগ্রামিং ভাষা তৈরির লক্ষ্য থেকে অনেকটাই দূরে সরে গেছে। এটা এখন আর পাইথনের জন্য সক্রিয় বিবেচ্য নয়।[৯]
২০০০ সালে পাইথনের মূল উন্নয়নকারী দল বিওপেন.কম এর সাথে যুক্ত হয়ে যৌথভাবে বিওপেন পাইথনল্যাবস গঠন করে। সিএনআরআই পাইথনের একটি সংস্করন ১.৬ প্রকাশের অনুরোধ করেছিল যা মূলত এ পর্যন্ত সিএনআরআইতে পাইথনের যেটুকু উন্নয়ন হয়েছে তার সম্মিলিত প্রকাশ। একারণে পাইথনের ১.৬ ও ২.০ সংস্করনের মধ্যে অনেক বিলম্ব ঘটেছিল।[১০] পাইথন ২.০ ছিল বিওপেন.কম থেকে প্রকাশিত প্রথম ও একমাত্র পাইথন ডিস্ট্রিবিউশন। পাইথন ২.০ প্রকাশিত হওয়ার পর গুইডো ভ্যান রোসাম ও অন্যান্য পাইথনল্যাবস কর্মীরা ডিজিটাল ক্রিয়েশন্স এ যোগ দেন।
পাইথন ২.০ তার বিভিন্ন বৈশিষ্টের অনেকাংশই ধার করেছে ফাংশনভিত্তিক প্রোগ্রামিং ভাষা হ্যাস্কেল থেকে। হ্যাস্কেলের লিস্ট ও পাইথনের মধ্যে অনেক মিল রয়েছে যদিও হ্যাস্কেল যতিচিহ্নকে বেশি গুরুত্ব দেয় আর পাইথন গুরুত্ব দেয় বর্ণভিত্তিক কিওয়ার্ড এর উপর। পাইথন ২.০ তে গারবেজ কালেকশন ব্যবস্থা যুক্ত হয়েছে যা নিয়মিত ভাবে মেমরি পরিষ্কার করতে সক্ষম।[১০]
এই দ্বৈত প্রকাশের পর ও ভ্যান রস্যিউমের সিএনআরআই ত্যাগ করে বাণিজ্যিক সফটওয়ার নির্মাতাদের সাথে যুক্ত হবার পর পরিষ্কার হয়ে যায় যে, জিপিএল লাইসেন্সের অধীনে পাইথন সফটওয়ারের ব্যবহারের খুবই প্রয়োজনীয়। সে সময় যে লাইসেন্স ব্যবহৃত হত তা ছিল পাইথন লাইসেন্স। এতে একটি সংযুক্তি ছিল যাতে বলা থাকে এই লাইসেন্স ভার্জিনিয়া রাজ্যের নিয়ন্ত্রণাধীন যারা এটা তৈরি করেছে। ফ্রি সফটওয়ার ফাউন্ডেশনের (এফএসএফ) আইনজীবিদের মতে এই লাইসেন্স গনু জিপিএলের সাথে সঙ্গতিপূর্ণ নয়। সিএনআরআই ও এফএসএফ একত্রিত হয়ে পাইথনের লাইসেন্সে পরিবর্তন আনেন যাতে এটা জিপিএলের সাথে সঙ্গতিপূর্ণ হয়। একই বছর (২০০১) ভ্যান রোসামকে এফএসএফ অ্যাওয়ার্ড ফর দ্য অ্যাডভান্সমেন্ট ওব ফ্রি সফটওয়ার পুরস্কার দেয়া হয়।
পাইথন ১.৬.১ আসলে শুধুই পাইথন ১.৬ যাতে কিছুটা ত্রুটি মুক্ত করা হয়েছে এবং নতুন জিপিএল-সঙ্গতিপূর্ণ লাইসেন্স রয়েছে।[১১]
সিনট্যাক্স বর্ণায়িত পাইথন কোডঃ
পাইথন ২.১ তৈরি করা হয়েছে পাইথন ১.৬.১ ও পাইথন ২.০ এর উপর ভিত্তি করে। এর লাইসেন্সের নাম পরিবর্তন করে রাখা হয় পাইথন সফটওয়ার ফাউন্ডেশন লাইসেন্স। পাইথন ২.১ এর প্রকাশের পর এগুলোর সমস্ত কোড, ডকুমেন্টেশন ও স্পেসিফিকেশন পাইথন সফটওয়ার ফাইন্ডেশন (পিএসএফ) এর অধীনে চলে আসে। অলাভজনক প্রতিষ্ঠান হিসেবে পিএসএফ গঠন করা হয় ২০০১ সালে। এটির ব্যবস্থাপনা ও গঠন অ্যাপাচি সফটওয়ার ফাউন্ডেশনের আদলে করা হয়।[১১] এই ভার্শনে স্ট্যাটিক স্কোপিং নিয়মাবলী (যেটির মূল প্রবক্তা হচ্ছে স্কিম নামে একটি প্রোগ্রামিং ভাষা) যোগ করা হয়, যদিও প্রথম দিকে এটি বাধ্যতামূলক ও সাধারনভাবে সক্রিয় ছিল না।[১২]
পাইথন ২.২ এর একটি প্রধান উদ্ভাবন হচ্ছে পাইথনের বিভিন্ন টাইপ (সি তে লেখা টাইপসমূহ) ও ক্লাসের (পাইথনে লেখা টাইপসমূহ) একই গঠনের আওতায় নিয়ে আসা। এর ফলে পাইথনের অবজেক্ট মডেল অনেক স্থিতিশীল ও প্রকৃত অবজেক্ট ওরিয়েন্টেড হয়েছে।[১৩] এতে আরও যুক্ত করা হয়েছে জেনারেটর যেটি আইকন নামে একটি ভাষায় প্রথম ব্যবহৃত হয়েছে।[১৪]
পাইথনের স্ট্যান্ডার্ড লাইব্রেরি ও সিনট্যাক্টিক্যাল ব্যবহার জাভা থেকে অনুপ্রাণিত হয়েছে। কোন কোন ক্ষেত্রে যেমনঃ logging প্যাকেজ,[১৫] যা যুক্ত হয় ২.৩ ভার্সনে,[১৬] স্যাক্স পার্সার যা ২.০ সংস্করনে যুক্ত হয় এবং ডেকোরেটর সিনট্যাক্স যা @ ব্যবহার করে এবং ২.৪ সংস্করনে যুক্ত হয়[১৭] added in version 2.4[১৮] ইত্যাদি।
পাইথন কোথায় ব্যবহার করা হয়?
ওয়েব ডেভেলপমেন্টে পাইথনের কিছু ফ্রেমওয়ার্ক ব্যবহৃত হয়। তার মধ্যে উল্লেখযোগ্য হচ্ছে Django এবং Pyramid। তাছাড়া কিছু মাইক্রো ফ্রেমওয়ার্ক আছে (যেমনঃ Flask এবং Bottle)। Kivi নামক ফ্রেমওয়ার্ক দিয়ে অ্যান্ড্রয়েড মোবাইল অ্যাপলিকেশন তৈরি করা যায়। এমনকি পাইথন দিয়ে গেম বানানো যায়। এছাড়া পাইথনের আরো ব্যবহার রয়েছে। যেমনঃ মেশিন লার্নিং,গ্রাফিক্স ইউজার ইন্টারফেস, বিজনেস অ্যাপলিকেশন, ডেটা সাইন্স, নিউমেরিকাল প্রোগ্রামিং, ডেটা অ্যানালাইসিস, সফটওয়্যার ডেভেলপমেন্ট ইত্যাদি। সফটওয়্যার ডেভেলপমেন্টে এর ব্যবহার দিন দিন বৃদ্ধি পাচ্ছে।
5
বিভিন্ন প্রতিষ্ঠানে পাইথনের ব্যবহার
পাইথন শুধুমাত্র ছোট কোম্পানিতেই ব্যবহার হয়না। গুগুল সার্চ ইঞ্জিনে পাইথনের প্রোগ্রামিংয়ের ব্যবহার রয়েছে। তাছাড়াও ফেসবুকের প্রডাকশন ইঞ্জিনিয়ারিংয়ে,নাসার অটোমেশন টুল, ইয়াহু ম্যাপ, ড্রপবক্স, ইউটিউব ইত্যাদিতে ব্যবহার রয়েছে।
পাইথনের কিছু জনপ্রিয় ফ্রেমওয়ার্কঃ
পাইথনের বেশ কিছু ফ্রেমওয়ার্ক রয়েছে। সেগুলো হলোঃ NumPy, Pylons, Tornado, Pyramid, Flask, WEB2PY, Bottle, Django, SciPy ইত্যাদি।
7
কখন শুরু করবো?
যারা পাইথন প্রোগ্রামিং শুরু করতে চায় তাদের প্রতি আমার পরামর্শ হচ্ছে, পাইথন শেখা শুরু করার আগে অন্য কোনো প্রোগ্রামিং আগে ল্যাঙ্গুয়েজ (যেমন সি, সি++) শেখা শেষ করা। এতে আপনার ওই ল্যাঙ্গুয়েজ সম্পর্কে ধারণা হবেই সাথে এটা ভালো মতো শিখতে পারবেন।
পাইথন এর কি কোনো ফিউচার আছে?
আপনি যদি কোনো একটি বিষয় নিয়ে পরিশ্রম করতে থাকেন একসময় আপনি ঠিকই সফল হতে পারবেন। তবে ফিউচার এর কথা যেহেতু এখানে তুলছি তাহলে বলে, বাংলাদেশে বিভিন্ন কোম্পানিতে পাইথন প্রোগ্রামার কাজ করছেন। তবে এর জনপ্রিয়তা বাংলাদেশে তেমন একটা নেই। তবে বিদেশে পাইথন প্রোগ্রামারদের প্রচুর চাহিদা রয়েছে। একটা গবেষণা থেকে দেখা গিয়েছে যে, আমেরিকায় প্রায় চল্লিশ হাজার পাইথন প্রোগ্রামার প্রয়োজন। তাহলে, এর চাহিদা কতোটা ব্যাপক তা বুঝাই যাচ্ছে। তাছাড়াও বাইরের দেশে একজন পাইথন ডেভেলপারের বেতন কয়েক লাখ ডলার।
6
কিভাবে শিখবো?
বর্তমানে ইউটিউব এর প্রচুর টিউটোরিয়াল রয়েছে। ইংরেজি ভাষার ভিডিওর ক্ষেত্রে Programming with Mosh, freeCodeCamp এসব চ্যানেলের ভিডিও দেখে যেতে পারে। তাছাড়া বাংলা ভাষার ভিডিওর ক্ষেত্রে আনিসুল ইসলাম স্যার, তামিম শাহরিয়ার সুবিন স্যারের ভিডিও দেখে শেখা শুরু করতে পারেন। বইয়ের ক্ষেত্রে ইন্টারনেটে অনেক বই পাওয়া যায়। বাংলা ভাষার ক্ষেত্রে তামিম শাহরিয়ার সুবিন স্যারের বই দেখে শেখা শুরু করে দিতে পারেন।
বাংলা ভাষায় পাইথন শেখার জন্য ইন্টারনেটে বেশ কিছু রিসোর্স রয়েছে –
http://pybook.subeen.com – পাইথন শেখার জন্য ফ্রি অনলাইন বই
https://youtu.be/qe6lJdqkAS0 – এক ঘণ্টার ভিডিওতে পাইথনের সঙ্গে পরিচয়
https://www.youtube.com/playlist?list=PLym69wpbTIIGXpzNtfg5rTKY638oVnEby – পাইথনের ওপর ভিডিও লেকচার সিরিজ। এখানে পাইথন ২ ব্যবহার করা হলেও পাইথন ৩-তে বেশিরভাগ কোড কাজ করবে।
প্রোগ্রামিং এর দশটি কোডিং সমস্যা নিয়ে আলোচনার লিঙ্কঃ
pow(a, n) – একটি ফাংশন তৈরি করতে হবে, যেখানে দুটি ইন্টিজার (a, n) ইনপুট দেওয়া থাকলে ফাংশনটি a^n রিটার্ন করবে। ফাংশনটির রানটাইম হতে হবে O(log n)।
BST – একটি ফাংশন তৈরি করতে হবে, যেখানে একটি বাইনারি ট্রি ইনপুট দেওয়া হলে সেটি বাইনারি সার্চ ট্রি (BST) কী না, তা বের করতে হবে।
Stack and Queue – স্ট্যাক (Stack) ব্যবহার করে কিউ (Queue) তৈরি করতে হবে, অর্থাৎ কিউ এর এনকিউ (enqueue) ও ডিকিউ (dequeue) ফাংশন তৈরি করতে হবে।
Triangle – একটি ইন্টিজার অ্যারে দেওয়া আছে, যার সবগুলো সংখ্যাই ধনাত্মক। ওই অ্যারে থেকে তিনটি করে উপাদান নিয়ে মোট কয়টি ত্রিভুজ বানানো যায়, সেটি গণনা করতে হবে।
Difference – একটি ইন্টিজার অ্যারে দেওয়া আছে যার উপাদানগুলো ছোট থেকে বড় ক্রমে সাজানো। এখন একটি অঋণাত্মক সংখ্যা দেওয়া হলে, বলতে হবে যে, অ্যারের যেকোনো দুটি পৃথক সংখ্যার অন্তরফল ওই সংখ্যাটির সমান কী না।
Sum – একটি পূর্ণসংখ্যার অ্যারেতে তিনটি করে সংখ্যা নিলে কতগুলো পৃথক ত্রয়ী পাওয়া যায়, যাদের যোগফল শূন্য (0) হবে?
Substring – দুটি স্ট্রিং দেওয়া আছে – A ও s. একটি ফাংশন লিখতে হবে, যার কাজ হচ্ছে, s যদি A-এর সাবস্ট্রিং হয়, তাহলে A-এর যেই ইনডেক্স থেকে s শুরু হয়েছে, সেই ইনডেক্স রিটার্ন করতে হবে।
Bit difference – একটা অ্যারেতে কতগুলো অঋণাত্মক সংখ্যা আছে। ওই সংখ্যাগুলোর মাঝে যতগুলো জোড়া (pair) আছে, তাদের মধ্যে বিটের পার্থক্যের যোগফল বের করতে হবে।
Running Median – একটি অ্যারেতে বা লিস্টে শুরুতে কোনো সংখ্যা নেই। অ্যারেতে ক্রমান্বয়ে n সংখ্যক সংখ্যা যুক্ত হবে, আর প্রতিটি সংখ্যা যুক্ত হওয়ার পরে ওই অ্যারের বর্তমান সংখ্যাগুলোর মিডিয়ান বের করতে হবে।
Linked List – লিঙ্কড লিস্টের শুরুর নোড (হেড নোড) দেওয়া থাকবে, আর একটা সংখ্যা দেওয়া থাকবে, ওই সংখ্যার মান যত, লিঙ্কড লিস্টের শেষ থেকে ততঘর বা ততটি নোড আগে এসে যেই নোড পাওয়া যায়, তার মান রিটার্ন করতে হবে।
পাইথনে প্রোগ্রাম শেখার আগে আমার কী জানা উচিত?
কিছুই জানার দরকার নাই। জাস্ট শিখতে শুরু করে দাও।
দরকার হলে গুগল প্লেস্টোরে গিয়ে- Programming Hero এপটা ইনস্টল করে সিরিয়াল ধরে এই জিনিসগুলো শিখে ফেলো।
ভিডিও দেখে শিখতে চাইলে
Learn Python – Full Course (long video)
Python Tutorial for Beginners(long video)
Python tutorial for beginners (short video series)
CS DOJO python series (short video series)
বাংলা বই পড়ে শিখতে চাইলে
মার্টিন ভাইয়ের এই ই-বুকটা অনেক ভালো এবং গুছানো। সেখানে প্রাথমিক, মিডিয়াম এবং কিছুটা এডভান্স লেভেলের জিনিস দেয়া আছে।
কেমন হবে যদি আমি আপনাকে বলি যে আপনি মোবাইল থেকেই পাইথন শিখতে পারবেন?
এর সাথে আমি যদি আপনাকে আরও বলি যে,
১। আপনি যথেষ্ট আনন্দের সাথে শিখতে পারবেন!
২। আপনি একইসাথে রিয়েল ওয়ার্ল্ড প্রজেক্টস সম্পূর্ণ করতে পারবেন!!
বেশি বলা হয়ে যাচ্ছে বলে মনে করছেন?
এটি আমার কাছে মনে হয়েছিলো যখন আমি প্রথম প্রোগ্রামিং হিরো[1] সম্পর্কে জানতে পেরেছিলাম। (২,০০,০০+ এর বেশিবার ডাউনলোড হওয়া এবং ৭,০০০+ রিভিউ নিয়ে পাইথন শেখার জন্য প্রথম সারির অ্যাপ)
এছাড়াো আরও অপশন রয়েছে আপনার জন্য। যেমন ধরুন Free Code Camp[2]এ আপনি কিছু অসাধারণ আর্টিকেল পাবেন এ ব্যাপারে এঁর আমি যখন এখানে লিখছি তখন তারা পাইথন এর কোর্স কন্টেন্ট নিয়ে আসার জন্য কাজ করছে। এটা বাদে রয়েছে CodeAcademy[3]
তবে আপনি যদি মাত্র শুরু করছেন শেখা পাইথন, তাহলে আমার পরামর্শ থাকবে, এমন কোন কিছু দিয়ে শুরু করা যেটা আপনাকে প্রথমেই ভয় পাইয়ে দেবে না, সহজেই বোঝা যাচ্ছে এবং একইসাথে আনন্দ পাবেন শিখতে গিয়ে। সেক্ষেত্রে পরামর্শ থাকবে প্রোগ্রামিং হিরো দিয়ে শুরু করার।
প্রোগ্রামিং শেখার জন্য আপনাকে পর্যাপ্ত পরিমাণ সময় বিনিয়োগ করতে হবে ।
১। প্রথমে, পাইথন প্রোগ্রামিংয়ের ডাটা টাইপ, গাণিতিক অপারেটর, লজিক্যাল অপারেটর, কন্ডিশনাল লজিক, লুপ ভালো করে শিখতে হবে ।
২। দ্বিতীয় ধাপে, পাইথনের অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং শিখতে হবে ।
৩। তৃতীয় ধাপে, কিভাবে পাইথনে লাইব্রেরি ইন্সটল করতে হয়, লাইব্রেরি ফাংশন ব্যবহার করতে হয় শিখতে হবে ।
৪। এবার আপনাকে শিখতে হবে পাইথনে প্রোগ্রামিং ভাষার বিভিন্ন ডাটা স্ট্রাকচার কোড করা।
৫। তারপরে শিখতে হবে কিছু জনপ্রিয় ।
উপরের জিনিসগুলি শেখার পরে আপনাকে পাইথনে প্রজেক্ট হিসেবে ছোটখাটো সফটওয়্যার, ওয়েবসাইট বানাতে হবে যাতে আপনার শেখাটা মজবুত হয় ।