পাইথনে ইম্পোর্ট পরিচিতি
পাইথনে শুধুমাত্র স্ট্যান্ডার্ড মডিউলই ইম্পোর্ট করা যায় না,
যেমন, re
(রেগুলার এক্সপ্রেশনের জন্য), বরং ব্যবহারকারী-সংজ্ঞায়িত
ফাইল থেকে নতুন মডিউলও তৈরি করা যায়।
ধরুন আমাদের কাছে একটি ফাইল lib.py আছে, যা
আমাদের কর্মক্ষেত্র ফাইল test.py-এর মতো একই
ডিরেক্টরিতে অবস্থিত:
- lib.py
- test.py
এটিতে একটি ফাংশন তৈরি করি, যা কনসোলে একটি বিস্ময়বোধক চিহ্ন প্রিন্ট করবে:
def func():
print('!')
এখন test.py ফাইলে যাই এবং
এতে এই ফাংশনটি ইম্পোর্ট করি। ফাইলের
সর্বোচ্চ লাইনে import কমান্ড লিখি,
যার পরে প্রয়োজনীয় ফাইলের (মডিউলের) নাম
লিখি। যেহেতু উভয় ফাইল একই ডিরেক্টরিতে
রয়েছে, তাই import-এর পরে
এটির এক্সটেনশন ছাড়া শুধুমাত্র মডিউলের নাম লিখলেই যথেষ্ট:
import lib
তারপর ইম্পোর্ট করা ফাংশনটি কল করি। এর
জন্য মডিউলের নামের পরে একটি ডট দিয়ে ফাংশনের
নাম func লিখি:
lib.func()
কোড 실행ের ফলাফল:
'!'
মডিউল ইম্পোর্ট করলে, কর্মক্ষেত্র ফাইলে শুধুমাত্র ফাংশনই নয়, বরং এর অন্যান্য সমস্ত কনটেন্টও প্রাপ্য হয়, উদাহরণস্বরূপ, ভেরিয়েবলগুলি।
মডিউল ইম্পোর্ট সম্প施行ন করার পরে, কর্মক্ষেত্র
ডিরেক্টরিতে স্বয়ংক্রিয়ভাবে একটি সিস্টেম ফোল্ডার
__pycache__ তৈরি হয়েছে। দয়া করে লক্ষ্য করুন
যে পাইথনে সমস্ত সিস্টেম ফাইল এবং
ফোল্ডারের নামের শুরুতে এবং শেষে ডাবল আন্ডারস্কোর থাকে:
- /__pycache__/
- lib.py
- test.py
কখনও কখনও এমন হয় যে অন্য ফোল্ডারে থাকা একটি মডিউল
ইম্পোর্ট করতে হয়, উদাহরণস্বরূপ,
/dir/lib.py পথে:
- /__pycache__/
- /dir/
- lib.py
- test.py
সেক্ষেত্রে, ইম্পোর্ট করার সময় ফোল্ডারের নাম এবং ফাইলের নাম একটি ডট দিয়ে লেখা হয় এবং ইম্পোর্ট করা ফাংশনও একইভাবে লেখা হয়:
import dir.lib
dir.lib.func()
একটি file.py ফাইল তৈরি করুন। এতে একটি
ফাংশন তৈরি করুন যা কনসোলে একটি সংখ্যা
প্রিন্ট করবে। এই ফাংশনটি আপনার কর্মক্ষেত্র কোড ফাইলে
ইম্পোর্ট করুন।
test1.file1.py ফাইলে একটি
ফাংশন তৈরি করুন যা কোনো একটি বার্তা প্রিন্ট করে।
এটিকে আপনার কর্মক্ষেত্র ফাইলে ইম্পোর্ট করুন।