প্রিয় বন্ধুরা , আশা করি সবাই ভাল আছেন । আজ আমি আবারও সিস্টেম প্রোগ্রামিং নিয়ে আলোচনা করব । এবার ও আপনারা পাইথন দিয়ে সিস্টেম এর কয়েকটি কাজ দেখবেন ।
দেখূন , আজ প্রথমে আমরা দেখব কীভাবে পাইথন দিয়ে একটা সিস্টেমের বিভিন্ন ইফরমেশন জানা যায় । এজন্য আপনাদের একটা মডিউল ইমপোর্ট করতে হবে যার নাম "platform" ।
তাই এই কাজ করার আগে এ্ই মডিউলটা ইমপোর্ট করে নিতে হবে । সবাই নিচের কোডগুলো দেখি ও লিখি :
দেখুন , এগুলো নিচের রেজাল্ট ক্রিয়েট করেছে । এটা হল আমার পিসির কনফিগারেশন ।
এখানে মূলত কোডগুলির অর্থ হল :
platform.uname() : সিস্টেম সম্পর্কে প্রায় সব (system, node, release, version, machine, processor ) তথ্য রিটার্ণ করে ।
platform.system() : কোন অপারেটিং সিস্টেম তা রিটার্ণ করে ।
platform.node() : পিসির ইউজার নেম ।
platform.release() : সিস্টেমের কততম রিলিজ তা রিটার্ণ করে ।
platform.version() : অপারেটিং সিস্টেম এর ভার্সন কত তা রিটার্ণ করে ।
platform.machine() : কত বিটের অপারেটিং সিস্টেম তা রিটার্ণ করে ।
platform.processor() : পিসির প্রসেসর সম্পর্কিত তথ্য রিটার্ণ করে ।
এবার আসি একটা গুরুত্বপূর্ণ কাজে । । এটার মেন কাজ হল আপনার দেওয়া ডাটা অনুযায়ী সিস্টেমের মধ্যে কোন ডাইরেক্টরিতে কতগুলো ফাইল , ফোল্ডার ,বা ডাইরেক্টরি আছে তা খুজে বের করা । এটা আমরা করব os মডিউলের একটা কমান্ড দিয়ে । এই মেথডটির নাম হল os.walk() ।
এটি সাথে সাথে সমস্ত ফাইলের নাম ও ফরম্যাটও বলে দেয় । সবাই নিচের কোডগুলি টাইপ করুন ।
দেখূন প্রথমে অমরা মডিউল ইমপোর্ট করেছি । তারপর ব্যাবহারকারী যে ডাইরেক্টরীর সকল তথ্য জানতে চান সেই ডাইরেক্টরী টা ইনপুট নিয়েছি । এরপর root, dirs, files নামের ৩ টি ভ্যরিয়েবল নিয়ে উক্ত ডাইরেক্টরিতে কতগুলি ফাইল , ফোল্ডার ও ডাইরেক্টরী আছে ও তাদের নাম ও ফরম্যাট রিটার্ণ করেছি os.walk(path) কোডের মাধ্যমে ।
তারপর আমরা সেগুলো প্রিন্ট করেছি ।
এখন সবাই দেখুন পাইথনের সাহায্যে কীভাবে কোন নির্দিষ্ট ফরম্যাটের ফাইল খুজে পেতে হয় । এর জন্য আমরা একটা নতুন মডিউল ইউজ করব যার নাম "fnmatch" । সবাই নিচের কোডগুলি লিখুন :
খেুন , এখানে আমি মডিউল ইমপোর্টের পর একটা প্যাথ বা ডাইরেক্টরী দেখিয়ে দিয়েছি । তারপর ফাইলের প্যাটার্ণ কেমন হবে তা দেখিদে দিয়েছি .mp3 দ্বারা ।
এগুলো আপনারা ইউজারের কাছ থেকে ইনপুটও নিতে পারেন । নিয়ে একটা ফাইল সার্চিং অ্যাপ তৈরী করতে পারেন ।
দেখুন , তারপর আমরা os.walk মেথড দ্বারা উক্ত ডাইরেক্টরীর আন্ডারে সব ফাইল , ডাইরেক্টরী ও ফোল্ডার চেক করেছি ও রিটার্ণ করেছি । কিন্তু প্রিন্ট করিনি । কারণ এটা আমাদের দরকার না ।
তারপর filename নামে একটা ভ্যারিয়েবল নিয়ে আমরা fnmatch.filter(files, pattern) কোড দ্বারা আমাদের দেখানো প্যাথে ও আমাদের বলে দেওয়া প্যাটার্ণের সাথে মিলিয়ে ফাইলগুলো ফিল্টার করেছি । তারপর একদম শেষ লাইনে আমরা os.path.join(root, filename) কোড দ্বারা ফাইলের প্যাথগুলো জয়েন করে রুট অর্থাৎ ডাইরেক্টরী ও ফাইলের নাম প্রিন্ট করেছি । ফলে আমাদের দেখানো পথে সমস্ত এম পি ৩ গানের একটা লিস্ট এটা প্রিন্ট করেছে ।
আর আমাদের রায়হান ভাই পাইথন বাংলা নামে একটা গ্রুপ তৈরী করেছেন ফেসবুকে । আপনারা কেউ ইচ্ছা করলে এটাতে জয়েন করতে পারেন ।
পাইথনের বিভিন্ন সমস্যা নিয়ে এখানে আলোচনা করা হবে ।
আজ আর লিখতে পারলাম না । আগামীতে আবার দেখা হবে । সবাই ভাল থাকবেন । ধন্যবাদ ।
।
অনলাইনে ছড়িয়ে ছিটিয়ে থাকা কথা গুলোকেই সহজে জানবার সুবিধার জন্য একত্রিত করে আমাদের কথা । এখানে সংগৃহিত কথা গুলোর সত্ব (copyright) সম্পূর্ণভাবে সোর্স সাইটের লেখকের এবং আমাদের কথাতে প্রতিটা কথাতেই সোর্স সাইটের রেফারেন্স লিংক উধৃত আছে ।