brass buddha figurine on black surface

পাইথনের মন্ত্র ও কিছু জরুরী শব্দ

পাইথনের অসম্ভব সুন্দর ভুবনে স্বাগতম!

পাইথন একটি প্রোগ্রামিং ভাষা।  পাইথন শেখা সহজ।  পাইথন মানুষের ভাষার কাছাকাছি।

পাইথনের সুন্দর ভাষার পেছনে একটা দর্শন আছে, যাকে বলা হলো Zen of Python।

পাইথন চালু করুন। তারপর  নিচের কোডটি লিখুন।

>>> import this

যেটা দেখা যাবে, সেটাকে বলে পাইথন জেন, বা পাইথন মন্ত্র। পাইথন মন্ত্রের একটি খসড়া অনুবাদ নিচে দিলাম।

সুন্দর কুৎসিতের চাইতে ভালো।

গুঢ়, অন্তর্হিতের চাইতে স্বচ্ছতা ভালো।

যৌগিকের চাইতে সরল ভালো।  আবার যৌগিক, জটিলের চাইতে ভালো।

বিষয়গুলো প্যাচ খেয়ে থাকার চাইতে সমান ভাবে ছড়িয়ে থাকা ভালো। ছড়ানো নিশ্চয়ই  ঘনীভূত হয়ে থাকার চাইতে ভালো।

সহজপাঠ্যতা একটি গুরুত্বপূর্ণ বিষয়।

নিয়ম  ভাঙ্গার জন্য বিশেষ ক্ষেত্রগুলো খুব একটা বিশেষ নয়।

বাস্তবতা যদিও বিশুদ্ধতার উপরে।

ভুলকে কখনোই নীরবে চলে যেতে দিতে নেই। যতক্ষণ না স্বচ্ছতা নীরব হয়ে  যায়।

যখন একাধিক পথ সামনে থাকে, তখন অনুমান করার ইচ্ছাকে ত্যাগ করতে হয়। একটি, কেবলমাত্র একটি নিশ্চিত পথই রয়েছে। যদিও সমস্যাক্রান্ত অবস্থায় ঐ পথটি  প্রথমে নিশ্চিত বলে মনে নাও হতে পারে।

‘কখনো না’-র চাইতে ‘এখন’ ভালো।   যদিও ‘কখনো না’ অনেক সময়ে ‘এখনই’-র চাইতে ভালো।

যদি কার্যকারিতা বোঝানো সহজ না হয়, তাহলে  বুদ্ধিটি খুব একটা ভালো না। আর যদি কার্যকারিতা বোঝানো সহজ হয়, তাহলে নিশ্চয়ই তা একটি ভালো বুদ্ধি।

নেমস্পেস একটি চমৎকার বুদ্ধি! চলো, এটি নিয়ে আরো কিছু করা যfক

যে শব্দগুলোর অর্থ জানা দরকার ভালোভাবে

Terminology একটা গুরুত্বপূর্ণ বিষয়। জ্ঞানের যে কোন বিভাগেই নিজস্ব শব্দ আছে। এই শব্দ গুলো নির্দিষ্ট কিছু অর্থ বোঝায়। তাদের নির্দিষ্ট সংজ্ঞা আছে। আমাদের দৈনন্দিন জীবনে এই শব্দগুলোর অর্থ ভিন্ন হতে পারে। প্রোগ্রামিং এর ক্ষেত্রে নবীনদের এই শব্দগুলোর অর্থ সুনির্দিষ্টভাবে জানা জরুরী।

অ্যালগরিদম। অ্যালগরিদম হলো একটি রেসিপি। এই রেসিপি বলে দেবে ঠিক কিভাবে কোন কাজ করতে হবে। যখন একটি প্রোগ্রাম লেখা হয় তখন আসলে প্রোগ্রামের ভাষার মাধ্যমে কম্পিউটার-মেশিনকে একটি কর্মপদ্ধতি বা অ্যালগরিদম বলে দেয়া হয়।মেশিন বুঝতে পারে এমন বর্ণনা হলো প্রোগ্রাম।

এক্সপ্রেশন। এক্সপ্রেশন হচ্ছে কম্পিউটার প্রোগ্রামের একটি অংশ যা কোন মানকে (value) নির্দেশ করে। যেমন 2+2 একটি এক্সপ্রেশন। এই এক্সপ্রেশনের মান হলো 4। সাধারণ এক্সপ্রেশন সাধারণ মানকে (2, ‘Hello’, 3.14159) কোন অপারেটর (+, /, % ইত্যাদি) বা কোন ফাংশন যেমন pow() ইত্যাদি দিয়ে তৈরি করা হয়। আরো জটিল এক্সপ্রেশন আমরা সাধারন এক্সপ্রেশনগুলো ব্যবহার করে তৈরি করতে পারি যেমন (2+2)*(3-1)। এক্সপ্রেশন ভ্যারিয়েবল নিয়েও তৈরি হতে পারে।

ভ্যারিয়েবল। ভ্যারিয়েবল একটি নাম বা ট্যাগ যা কোন মানকে (value) নির্দেশ করতে পারে।অন্যকথায় বিভিন্ন মান বা ভ্যালুকে আমরা ভ্যারিয়েবল দিয়ে চিহ্নিত করি। যেমন i=2 এখানে iহলো একটি ভ্যারিয়েবল। আর i=2 হলো একটি এসাইনমেন্ট। এসাইনমেন্ট হলো একধরনের স্টেটমেন্ট।

স্টেটমেন্ট। স্টেটমেন্ট একটি নির্দেশনা, যা কম্পিউটারকে কিছু করতে বলে। স্টেটমেন্ট হতে পারে কোন ভ্যারিয়েবলকে একটি ভ্যালু দেয়া, কোন কিছু প্রিন্ট করা, মডিউল ইম্পোর্ট করতে বলা ইত্যাদি।

ফাংশন। একটি ফাংশন একটি মেশিনের মতো। আমরা মেশিনের মধ্যে কোন কাঁচামাল দিলে মেশিনটা নানা রকম প্রক্রিয়াজাত করে আমাদের নানা রকমের জিনিস দেবে। ফাংশনের মধ্যে অনেকরকমের ধাপ, স্টেটমেন্ট থাকতে পারে। ফাংশনের মাধ্যমে আমরা একটি ইনপুট দিলে ফাংশন আমাদের আউটপুট দেবে। পাইথনে আমরা অনেক ফাংশন ব্যবহার করি যেমন ধরা যাক len(), raw_inpur() কিংবা pow()।আমরা ইচ্ছেমতোন ফাংশন তৈরিও করতে পারি।

মডিউল। মডিউল আসলে বিভিন্ন প্রোগ্রাম। আমরা এই প্রোগ্রামগুলোকে অন্য প্রোগ্রামের মধ্যে ব্যবহার করতে পারি। পাইথনে সব প্রোগ্রামই মডিউল হিসেবে ব্যাবহার করতে পারি।

প্রোগ্রাম! এটা নিয়ে বলার কিছু নেই।

স্ট্রিং। স্ট্রিং কিছুই না, তারা কেবল একগুচ্ছ text। স্ট্রিং দিয়ে অনেক কিছু করার আছে।


“বায়োইনফরমেটিক্স প্রজেক্টে কিভাবে ভাবতে হয়” এটা নিয়ে আমি একটা ছোট ই-বুক তৈরি করেছি। ই-বুকটি পেতে চাইলে নিচের ফর্মে আপনার নাম ও ইমেইল ঠিকানা দিন।

ধন্যবাদ!

The Bioinformatics Newsletter

I often explore new tools and techniques for various bioinformatics analyses. Often these adventures yield no results. But sometimes they are fruitful, and I incorporate them into my project workflows.

My proposal to you is that I will write sporadic newsletters. The main content of this newsletter will be my experiments: what tool I explored, what worked, how it worked, and why I am using it, etc.

Do you think you would like to read these monologues? If this is something that resonates with you, please subscribe. 🙂

Join 95 other subscribers