নিম্নলিখিতটি ওপি-র সমস্যাটি সমাধান করে না, তবে শিরোনাম এবং ত্রুটিটি হ'ল আমি যা सामना করেছি।
আপনার প্রকল্পের একটি থাকে setup.py
তাতে স্ক্রিপ্ট, আপনি যে প্যাকেজ যেখানে আপনি থাকেন ইনস্টল করতে পারেন সঙ্গে python3 -m pip install -e .
বা python3 setup.py install
বা python3 setup.py develop
, এবং এই প্যাকেজটি ইনস্টল করা হবে, কিন্তু (যখন প্যাকেজ ইম্পোর্ট কোডে পরিবর্তন দেখা যাবে তাই) এখনও সম্পাদনাযোগ্য। এটি একটি না থাকে setup.py
, তা জানার জন্য ।
যাইহোক, ওপি-এর সমস্যার মুখোমুখি সমস্যাগুলি কি আর উপস্থিত নেই বলে মনে হচ্ছে?
ফাইল one.py
:
def function():
print("output")
ফাইল two.py
:
import one
one.function()
chmod +x two.py
./two.py
Command line output: output
অন্যান্য সমাধানগুলি 'নোংরা' বলে মনে হচ্ছে
2 টি পরীক্ষা ফাইলের সাথে ওপি'র ক্ষেত্রে, তাদের কাজের পরিবর্তিত করা সম্ভবত ঠিক আছে। তবে, অন্যান্য বাস্তব পরিস্থিতিতে, অন্যান্য উত্তরের তালিকাভুক্ত পদ্ধতি সম্ভবত প্রস্তাবিত নয়। তাদের আপনাকে অজগর কোডটি সংশোধন করা বা আপনার নমনীয়তা (একটি নির্দিষ্ট ডিরেক্টরি থেকে পাইথন ফাইল চালানো) সীমাবদ্ধ করা এবং সাধারণত বিরক্তির পরিচয় দেওয়া প্রয়োজন। আপনি যদি কেবল একটি প্রকল্পের ক্লোন করেছেন, এবং এটি ঘটে? এটি সম্ভবত অন্যান্য ব্যক্তির জন্য ইতিমধ্যে কাজ করে এবং কোড পরিবর্তন করা অপ্রয়োজনীয়। নির্বাচিত উত্তরটিও চায় যে লোকেরা এটি কার্যকর করতে একটি নির্দিষ্ট ফোল্ডার থেকে একটি স্ক্রিপ্ট চালায়। এটি দীর্ঘমেয়াদী বিরক্তির উত্স হতে পারে, যা কখনই ভাল হয় না। এটি আপনার নির্দিষ্ট পাইথন ফোল্ডারটি PATH এ যুক্ত করার পরামর্শ দেয় (পাইথন বা কমান্ড লাইনের মাধ্যমে করা যেতে পারে)। আবার, আপনি যদি কয়েক মাসের মধ্যে ফোল্ডারটির নাম পরিবর্তন বা সরিয়ে নিয়ে যান তবে কী হবে? আপনাকে এই পৃষ্ঠাটি আবার খুঁজে নিতে হবে, এবং অবশেষে আবিষ্কার করুন যে আপনাকে পথ নির্ধারণ করতে হবে (এবং আপনি এটি কয়েক মাস আগে ঠিক এটি করেছিলেন) এবং আপনাকে কেবল একটি পাথ আপডেট করতে হবে (নিশ্চিত যে আপনি সিএস.পথ ব্যবহার করতে পারেন এবং প্রোগ্রামালিমেটিকভাবে সেট করতে পেরেছিলেন, তবে এটি এখনও নিশ্চিন্ত হতে পারে )। অনেক বিরক্তির উত্স।
import sys; sys.path