পাইলিন্ট "আমদানি করতে অক্ষম" ত্রুটি - কীভাবে পাইথনপথ সেট করবেন?


165

আমি উইন্ডোজ উইং আইডিই এর ভিতরে থেকে পাইলিন্ট চালাচ্ছি। আমার প্রোজেক্টে আমার একটি উপ ডিরেক্টরি (প্যাকেজ) রয়েছে এবং প্যাকেজের অভ্যন্তরে আমি শীর্ষ স্তর থেকে একটি মডিউল আমদানি করি, অর্থাত্।

__init__.py
myapp.py
one.py
subdir\
    __init__.py
    two.py

two.pyআমার ভিতরে আছে import oneএবং এটি রানটাইমের সময় সূক্ষ্মভাবে কাজ করে, কারণ শীর্ষ স্তরের ডিরেক্টরি (যা থেকে myapp.pyচালিত হয়) পাইথন পথে রয়েছে। যাইহোক, আমি যখন পাই.এলআইএনটি টু.পাইতে চালাচ্ছি তখন এটি আমাকে একটি ত্রুটি দেয়:

F0401: Unable to import 'one'

আমি কিভাবে এটা ঠিক করব?

উত্তর:


144

আমি দুটি সচেতন জানি।

এক, PYTHONPATHআপনার মডিউলের উপরে ডিরেক্টরি অন্তর্ভুক্ত করতে পরিবেশের পরিবর্তনশীল পরিবর্তন করুন ।

বিকল্পভাবে, ~/.pylintrcআপনার মডিউলের উপরে ডিরেক্টরিটি অন্তর্ভুক্ত করতে সম্পাদনা করুন, এটির মতো:

[MASTER]
init-hook='import sys; sys.path.append("/path/to/root")'

(বা পাইলিন্টের অন্যান্য সংস্করণে, ডি-হুকের জন্য আপনাকে [জেনারেল] [মাস্টার] এ পরিবর্তন করতে হবে)

এই দুটি বিকল্পেরই কাজ করা উচিত।

আশা করি এইটি কাজ করবে.


8
এই পাইলিন্ট হুকটি বর্তমানে ভিএসকোডের সবচেয়ে ভাল উপায় কারণ পাইথনপথ এখনও এটি লটার ব্যবহারের জন্য নির্মিত নয়।
ড্যানি স্ট্যাপল

2
সিনটাস্টিক সহ ম্যাকভিম ব্যবহার করে আমার একই সমস্যা রয়েছে। আমদানি ত্রুটি ঠিক করতে আমি কীভাবে প্রসেক্টরকে কনফিগার করতে পারি?
লরেন্ট


~/.pylintrcওএসএক্সে আমার জন্য কাজ করেছেন, অন্যটি কাজ করেননি
মিকেল

নিশ্চিত হতে পারছি না কেন এই গৃহীত উত্তর নয় - এছাড়াও, এই হুমড়ি তাদের জন্য কহতব্য, আপনি প্রয়োজন export PYTHONPATHযাতে pylintএটি দেখতে পাবেন (অন্তত ব্যাশ / zsh মধ্যে)
মার্কো Massenzio

43

পথে পরিবর্তনের সমাধানটি init-hookভাল, তবে আমি এটিকে অপছন্দ করি যে আমাকে সেখানে নিখুঁত পাথ যোগ করতে হয়েছিল, ফলস্বরূপ আমি প্রকল্পের বিকাশকারীদের মধ্যে এই পাইলিনট্রিক ফাইলটি ভাগ করতে পারি না। পাইলিনট্রিক ফাইলের আপেক্ষিক পথটি ব্যবহার করে আমার এই সমাধানটি আরও ভাল কাজ করে:

[MASTER]
init-hook="from pylint.config import find_pylintrc; import os, sys; sys.path.append(os.path.dirname(find_pylintrc()))"

নোট করুন যে pylint.config.PYLINTRCএছাড়াও বিদ্যমান এবং একই মান আছে find_pylintrc()


1
নিশ্চিত করে যে এটি E0611 এবং E0401 পাইলট ত্রুটির জন্য সমাধানটি সত্যই সরবরাহ করেছে। ভিএসকোড ব্যবহারকারীদের জন্য: খোলা ফোল্ডারটি "পাইথন রুট ফোল্ডার", এবং .pylintrc সেই ফোল্ডারে রয়েছে তা গুরুত্বপূর্ণ।
এনপি 8

এছাড়াও, আপনার মডিউল ডিরেক্টরি নামগুলির .কোনওটিই (ডট) দিয়ে শুরু না করে তা নিশ্চিত করুন ।
দেখেছেন-সোমাল এবং নাটালি

2
যদি আপনি কোনও নির্দিষ্ট সাব-ফোল্ডার যুক্ত করতে চান (অর্থাত্ app) আপনি ব্যবহার করতে পারেনfrom pylint.config import find_pylintrc; import os, sys; sys.path.append(os.path.join(os.path.dirname(find_pylintrc()), 'app'))
চ্যাচান

27

1) sys.path একটি তালিকা।

2) সমস্যাটি কখনও কখনও sys.path আপনার ভার্চুয়ালেনভ.পাথ নয় এবং আপনি আপনার ভার্চুয়ালেনভে পাইলট ব্যবহার করতে চান

৩) সুতরাং যেমন বলা হয়েছে, আর-হুক ব্যবহার করুন (এতে মনোযোগ দিন 'এবং "পাইলটের পার্সেস কঠোর)

[Master]
init-hook='sys.path = ["/path/myapps/bin/", "/path/to/myapps/lib/python3.3/site-packages/", ... many paths here])'

অথবা

[Master]
init-hook='sys.path = list(); sys.path.append("/path/to/foo")'

.. এবং

pylint --rcfile /path/to/pylintrc /path/to/module.py

8
আমি pylintএই পরামর্শ অনুসারে আমার ভার্চুয়ালেনভে
ম্যাট

3
এটি দুর্দান্ত কাজ করে, এবং শীর্ষের উত্তর হওয়া উচিত। যদি আপনার কাছে .pylintrc সেট না থাকে তবে pylint --generate-rcfile > .pylintrcআপনার বাড়ির ফোল্ডারে একটি দ্রুত করার বিষয়টি নিশ্চিত করুন ।
reka18

26

ভেনভের অধীনে পাইলট পথটি কনফিগার করে সমস্যার সমাধান করা যেতে পারে: $ বিড়াল .vscode / settings.json

{
    "python.pythonPath": "venv/bin/python",
    "python.linting.pylintPath": "venv/bin/pylint"
}

2
উইন্ডোজের জন্য এটি { "python.pythonPath": "${workspaceFolder}\\.venv\\Scripts\\python.exe" "python.linting.pylintPath": "${workspaceFolder}\\.venv\\Scripts\\pylint.exe" } কেবল সম্পূর্ণতার জন্য।
রায় 2511

এই সম্পাদকটির জন্য প্রশ্ন জিজ্ঞাসা করবেন না।
ইভাইলো বারদারোভ

ভিএসকোড এখন এই বার্তাটি দেখায়: The setting "python.pythonPath" defined in your settings.json is now deprecated. আমি python.pythonPathলাইনটি মুছলে এটি এখনও কার্যকর হবে বলে মনে হচ্ছে।
জেসি অ্যালড্রিজ

23

আপনি একটি খালি আছে __init__.pyযাক পাইথন জানেন যে dirs মডিউল হয় উভয় ডিরেক্টরিগুলি থেকে ফাইল?

আপনি যখন ফোল্ডারের মধ্যে থেকে চলছেন না তখন মূল রূপরেখা (যেমন আমি পাইলট থেকে, যদিও আমি এটি ব্যবহার করি নি):

topdir\
  __init__.py
  functions_etc.py
  subdir\
    __init__.py
    other_functions.py

এভাবেই পাইথন ইন্টারপ্রেটার বর্তমান ডিরেক্টরী থেকে রেফারেন্স ছাড়া মডিউল সচেতন, তাই যদি pylint নিজস্ব সুনির্দিষ্ট পাথ থেকে চলছে এটিকে অ্যাক্সেস করতে পারছে হবে functions_etc.pyযেমন topdir.functions_etcবা topdir.subdir.other_functionsদেওয়া topdirহয় PYTHONPATH

আপডেট: যদি সমস্যাটি __init__.pyফাইল না হয় তবে কেবলমাত্র আপনার মডিউলটি অনুলিপি করার বা স্থানান্তরিত করার চেষ্টা করুন c:\Python26\Lib\site-packages- এটি অতিরিক্ত প্যাকেজ রাখার একটি সাধারণ জায়গা এবং এটি অবশ্যই আপনার পাইথনপথে থাকবে। আপনি যদি উইন্ডোজ প্রতীকী লিঙ্কগুলি বা সমমানের (আমি না!) কীভাবে করতে জানেন তবে আপনি তার পরিবর্তে এটি করতে পারেন। এখানে আরও অনেক অপশন রয়েছে: http://docs.python.org/install/index.html , আপনার বিকাশ কোডের ব্যবহারকারী-স্তরের ডিরেক্টরিতে সিস.পাথ যুক্ত করার বিকল্প সহ, তবে বাস্তবে আমি সাধারণত প্রতীকীভাবে লিঙ্ক করি সাইট প্যাকেজগুলিতে আমার স্থানীয় বিকাশ দির - এটি অনুলিপি করার একই প্রভাব রয়েছে।


1
হ্যাঁ, আমি __init__.pyউভয় ডিরেক্টরিতে আছে। আমি মনে করি সমস্যাটি হ'ল পাইলিন্ট চলাকালীন শীর্ষ ডিথ পাইথনপথে নেই এবং আমি কীভাবে এটি ঠিক করব তা নিশ্চিত নই।
ইএমপি

সিমলিংকটি একটি ভাল ধারণা, তবে এটি কেবল উইন্ডোজ ভিস্তা থেকেই সমর্থিত এবং আমি এক্সপি চালাচ্ছি। আমি মনে করি আমি এটির সাথে যুক্ত করার চেষ্টা করতে পারি ...
EMP

হার্ডলিঙ্কিং: না, আপনি এটি আরও ভাল করবেন না। আমি এটি নিয়ে খেললাম এবং, যদিও এটি অবশ্যই কাজ করে (একভাবে), এটি আপনার প্রত্যাশার মতো কার্যকর হবে না।
শাইলেন্ট

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


5

আমি জানি না যে এটি উইংআইডির সাথে কীভাবে কাজ করে তবে জিয়ানির সাথে পাইলিন্ট ব্যবহার করার জন্য আমি আমার বাহ্যিক আদেশটি এতে সেট করে রেখেছি:

PYTHONPATH=${PYTHONPATH}:$(dirname %d) pylint --output-format=parseable --reports=n "%f"

যেখানে% f ফাইলের নাম এবং% d হল পথ। কারও জন্য দরকারী হতে পারে :)


4

PYTHONPATHআমার অ্যাপ ইঞ্জিনের পথটি যুক্ত করতে আমাকে সিস্টেম ভেরিয়েবল আপডেট করতে হয়েছিল । আমার ক্ষেত্রে আমাকে কেবল আমার ~/.bashrcফাইলটি সম্পাদনা করতে হয়েছিল এবং নিম্নলিখিত লাইনটি যুক্ত করতে হয়েছিল:

export PYTHONPATH=$PYTHONPATH:/path/to/google_appengine_folder

আসলে, আমি init-hookপ্রথমটি সেট করার চেষ্টা করেছি কিন্তু এটি আমার কোড বেস জুড়ে ধারাবাহিকভাবে সমস্যার সমাধান করতে পারে নি (কেন তা নিশ্চিত নয়)। আমি একবার এটি সিস্টেমের পথে যুক্ত করেছি (সম্ভবত একটি ভাল ধারণা) আমার সমস্যাগুলি চলে যায়।


3

একটি সীমাবদ্ধ যেটি আমি সবেমাত্র আবিষ্কার করেছি তা হ'ল একক ফাইলের পরিবর্তে পুরো প্যাকেজটির জন্য কেবল পাইলিন্ট চালানো। একরকম, এটি তখন আমদানি করা মডিউলটি পরিচালনা করতে পরিচালনা করে।


শুনে ভালো লাগছে; কীভাবে?
সিস টিমারম্যান

1
@CesesTimmerman pylint ... dirপ্যারেন্ট ফোল্ডার থেকে চালান । এটি ফাইলের __init__.pyসাথে প্রতিটি সাবফোল্ডারে উপস্থিত থাকা প্রয়োজন .py
yugr

3

চেষ্টা

if __name__ == '__main__':
    from [whatever the name of your package is] import one
else:
    import one

দ্রষ্টব্য যে পাইথন 3 এ, ধারাটিতে অংশটির বাক্য গঠন elseহবে

from .. import one

দ্বিতীয় চিন্তায়, সম্ভবত এটি আপনার নির্দিষ্ট সমস্যাটি সমাধান করবে না। আমি প্রশ্নটি ভুল বুঝেছিলাম এবং ভেবেছিলাম যে two.py মূল মডিউল হিসাবে চালিত হচ্ছে, তবে এটি তেমন নয়। এবং পাইথন ২.6 এর মধ্যে পার্থক্য বিবেচনা করে (আমদানি না করে absolute_import)__future__ ) এবং পাইথন ৩.x হ্যান্ডেল আমদানিগুলির , যাইহোক, পাইথন ২.6 এর জন্য আপনার এটি করার দরকার হবে না, আমি ভাবি না।

তবুও, যদি আপনি অবশেষে পাইথন 3 এ পরিবর্তন করেন এবং প্যাকেজ মডিউল এবং প্যাকেজের অভ্যন্তরে পৃথক স্ক্রিপ্ট হিসাবে মডিউল ব্যবহার করার পরিকল্পনা করেন তবে এর মতো কিছু রাখা ভাল ধারণা হতে পারে

if __name__ == '__main__':
    from [whatever the name of your package is] import one   # assuming the package is in the current working directory or a subdirectory of PYTHONPATH
else:
    from .. import one

মনে

সম্পাদনা: এবং এখন আপনার প্রকৃত সমস্যার সম্ভাব্য সমাধানের জন্য। হয় আপনার মডিউলযুক্ত ডিরেক্টরি থেকে পাইলিন্ট চালান one(সম্ভবত কমান্ড লাইনের মাধ্যমে), অথবা পাইলিন্ট চালানোর সময় নিম্নলিখিত কোডটি কোথাও রেখে দিন:

import os

olddir = os.getcwd()
os.chdir([path_of_directory_containing_module_one])
import one
os.chdir(olddir)

মূলত, পাইথনপথের সাথে ঝাঁকুনির বিকল্প হিসাবে, কেবলমাত্র one.pyআমদানি করার সময় বর্তমান কার্যক্ষম ডিরেক্টরিটি ডিরেক্টরি রয়েছে তা নিশ্চিত করুন ।

(ব্রায়ানের উত্তরটির দিকে তাকিয়ে আপনি সম্ভবত পূর্ববর্তী কোডটি অর্পণ করতে পারেন init_hook, তবে আপনি যদি এটি করতে চলেছেন তবে আপনি কেবল sys.pathতাঁর কাজটি সংযোজন করতে পারেন যা আমার সমাধানের চেয়ে সামান্য মার্জিত is)


2

কীটি হ'ল sys.pathএনভ ভেরিয়েবল সম্পর্কে বিবেচনা না করে আপনার প্রকল্প ডিরেক্টরিটি যুক্ত করা ।

যে কেউ ভিএসকোড ব্যবহার করে তাদের জন্য, আপনার প্রকল্পের একটি বেস ডিরেক্টরি আছে যদি আপনার জন্য এখানে একটি লাইন সমাধান রয়েছে:

[MASTER]
init-hook='base_dir="my_spider"; import sys,os,re; _re=re.search(r".+\/" + base_dir, os.getcwd()); project_dir = _re.group() if _re else os.path.join(os.getcwd(), base_dir); sys.path.append(project_dir)'

আমি এটি কিছুটা ব্যাখ্যা করি:

  • re.search(r".+\/" + base_dir, os.getcwd()).group(): সম্পাদনা ফাইল অনুযায়ী বেস ডিরেক্টরি সন্ধান করুন

  • os.path.join(os.getcwd(), base_dir): কমান্ড লাইনের পরিবেশের সাথে যোগ cwdকরতে যোগ করুনsys.path


এফওয়াইআই, এখানে আমার .pylintrc:

https://gist.github.com/chuyik/f0ffc41a6948b6c87c7160151ffe8c2f


2

আমার একই সমস্যা ছিল এবং এটি আমার ভার্চুয়ালেনভে পাইলিন্ট ইনস্টল করে এবং তারপরে ফাইলের নীচের সাথে আমার প্রকল্প ডিরেক্টরিতে একটি .pylintrc ফাইল যুক্ত করে এটি ঠিক করেছি:

[Master]
init-hook='sys.path = list(); sys.path.append("./Lib/site-packages/")'

আমাকে নিশ্চিত করতে হবে যে এটি E0611 পাইলট ত্রুটি থেকে মুক্তি পেয়েছে, তবে E0401 ত্রুটিগুলি রয়ে গেছে।
এনপি 8

1

ম্যানুয়ালি পাইথনপথের ভিতরে ডিরটি সংযুক্ত করে?

sys.path.append(dirname)

হুম, তবে আপনি কোডটি কোথায় রাখবেন? প্রতিটি ফাইলের শীর্ষে? আমি মনে করি এটি কার্যকর হবে তবে এটি পাইকিন্টকে কাজ করার জন্য যথেষ্ট হ্যাক।
ইএমপি

@ অ্যাভজেনি: ব্রায়ান এম হান্ট সম্প্রতি পোস্ট করেছেন যে উত্তরটি দেখুন।
জাব

এবং প্রতিটি ফাইলের শীর্ষে এটি যুক্ত করা কোনও কারণে কার্যকর হয় না - পাইলিন্ট এটি স্ক্যান করছে এমন মডিউলগুলির মধ্যে থেকে তৈরি sys.path- র কোনও পরিবর্তন উপেক্ষা করার জন্য পুরোপুরি সামগ্রী বলে মনে হচ্ছে। আমি কেন গবেষণা করতে বিরক্ত করিনি, যদিও ...
জাভাওয়াইজার্ড

1

আমারও একই সমস্যা ছিল এবং যেহেতু আমি কোনও উত্তর খুঁজে পাইনি আমি আশা করি এটি একই ধরণের সমস্যাযুক্ত যে কাউকে সহায়তা করতে পারে।

আমি এপিলিন্ট সহ ফ্লাইমেক ব্যবহার করি। মূলত আমি যা করেছি তা হ'ল একটি ডায়ার্ড-মোড-হুক যুক্ত করে যে পরীক্ষা করে যে ডায়ার্ড ডিরেক্টরিটি পাইথন প্যাকেজ ডিরেক্টরি কিনা। যদি এটি হয় তবে আমি এটি পাইথনপথে যুক্ত করব। আমার ক্ষেত্রে আমি ডিরেক্টরিটিকে পাইথন প্যাকেজ হিসাবে বিবেচনা করি যদি এতে "সেটআপ.পি" নামের একটি ফাইল থাকে।

;;;;;;;;;;;;;;;;;
;; PYTHON PATH ;;
;;;;;;;;;;;;;;;;;

(defun python-expand-path ()
  "Append a directory to the PYTHONPATH."
  (interactive
   (let ((string (read-directory-name 
          "Python package directory: " 
          nil 
          'my-history)))
     (setenv "PYTHONPATH" (concat (expand-file-name string)
                  (getenv ":PYTHONPATH"))))))

(defun pythonpath-dired-mode-hook ()
  (let ((setup_py (concat default-directory "setup.py"))
    (directory (expand-file-name default-directory)))
    ;;   (if (file-exists-p setup_py)
    (if (is-python-package-directory directory)
    (let ((pythonpath (concat (getenv "PYTHONPATH") ":" 
                  (expand-file-name directory))))
      (setenv "PYTHONPATH" pythonpath)
      (message (concat "PYTHONPATH=" (getenv "PYTHONPATH")))))))

(defun is-python-package-directory (directory)
  (let ((setup_py (concat directory "setup.py")))
    (file-exists-p setup_py)))

(add-hook 'dired-mode-hook 'pythonpath-dired-mode-hook)

আশাকরি এটা সাহায্য করবে.


1

যদি কেউ পাইচার্মে বাহ্যিক সরঞ্জাম হিসাবে পাইলট চালনার কোনও উপায় সন্ধান করে এবং এটি তাদের ভার্চুয়াল পরিবেশের সাথে কাজ করে (কেন আমি এই প্রশ্নটিতে এসেছি), আমি কীভাবে এটি সমাধান করেছি তা এখানে:

  1. পাইচার্ম> পছন্দসমূহ> সরঞ্জামসমূহ> বাহ্যিক সরঞ্জামগুলিতে পাইল্টের জন্য কোনও আইটেম যুক্ত বা সম্পাদনা করুন।
  2. সম্পাদনা সরঞ্জাম ডায়ালগের সরঞ্জাম সেটিংসে পাইথন ইন্টারপ্রেটার ডিরেক্টরি থেকে পাইলট ব্যবহার করতে প্রোগ্রাম সেট করুন: $PyInterpreterDirectory$/pylint
  3. প্যারামিটার ক্ষেত্রে আপনার অন্যান্য পরামিতিগুলি সেট করুন, যেমন: --rcfile=$ProjectFileDir$/pylintrc -r n $FileDir$
  4. আপনার কাজের ডিরেক্টরি সেট করুন $FileDir$

এখন পাইলটটিকে বাহ্যিক সরঞ্জাম হিসাবে ব্যবহার করে আপনি সাধারণ কনফিগারেশন ফাইলটি ব্যবহার করে যা যা ডিরেক্টরি নির্বাচন করেছেন তাতে পাইলট চালানো হবে এবং আপনার প্রকল্পের জন্য যে অনুবাদ অনুবাদক কনফিগার করা হয়েছে তা ব্যবহার করবেন (সম্ভবত এটি আপনার ভার্চুয়ালেনভ অনুবাদকারী)।


1

এটি একটি পুরানো প্রশ্ন তবে এর কোনও গ্রহণযোগ্য উত্তর নেই, সুতরাং আমি এটি প্রস্তাব করব: পড়ার জন্য আমদানির বিবরণটি two.py এ পরিবর্তন করুন:

from .. import one

আমার বর্তমান পরিবেশে (পাইথন ৩.6, পাইলট ২.৩.১ ব্যবহার করে ভিএসকোড) এটি পতাকাঙ্কিত বিবৃতি সাফ করে।


1

আমি একটি সুন্দর উত্তর পেয়েছি । আপনার পাইলট্রিকটি সম্পাদনা করুন এবং নিম্নলিখিতটি মাস্টারে যুক্ত করুন

init-hook="import imp, os; from pylint.config import find_pylintrc; imp.load_source('import_hook', os.path.join(os.path.dirname(find_pylintrc()), 'import_hook.py'))"

1

আপনি যখন পাইথন ইনস্টল করেন, আপনি পাথ সেট আপ করতে পারেন। যদি পথটি ইতিমধ্যে সংজ্ঞায়িত করা থাকে তবে আপনি যা করতে পারেন তা ভিএস কোডের মধ্যে রয়েছে, Ctrl + Shift + P টিপুন এবং পাইথন টাইপ করুন: ইন্টারপ্রেটার নির্বাচন করুন এবং পাইথনের আপডেট হওয়া সংস্করণ নির্বাচন করুন। আরও তথ্যের জন্য এই লিঙ্কটি অনুসরণ করুন, https://code.visualstudio.com/docs/python/en वातावरण


0

আপনি যদি vscode ব্যবহার করে থাকেন তবে নিশ্চিত হয়ে নিন যে আপনার প্যাকেজ ডিরেক্টরি _pychache__ ডিরেক্টরি থেকে বাইরে রয়েছে।


এছাড়াও ভিএস কোডের সাথে ফোল্ডারের নামগুলিতে ডট যুক্ত সম্ভাব্য সমস্যা রয়েছে বলে মনে হচ্ছে: github.com/PyCQA/pylint/issues/2182
এরিক

0

আপনি যদি লিনাক্সে সিথন ব্যবহার করেন, আমি module.cpython-XXm-X-linux-gnu.soআমার প্রকল্প লক্ষ্য ডিরেক্টরিতে ফাইলগুলি সরিয়ে সমাধান করেছি।


0

এই কোডটি কেবল .vscode / settings.json ফাইলটিতে যুক্ত করুন

, "পাইথন.লিন্টিং.পাইলিন্টপথ": "ভেনভ / বিন / পাইলিন্ট"

এটি পাইলটটির অবস্থানটি জানাবে (যা পাইথনের ত্রুটি যাচাইকারী)


-1

হ্যালো আমি বিভিন্ন ডিরেক্টরি থেকে প্যাকেজগুলি আমদানি করতে সক্ষম হয়েছি। আমি কেবল নিম্নলিখিতটি করেছি: দ্রষ্টব্য: আমি ভিসকোড ব্যবহার করছি

পাইথন প্যাকেজ তৈরি করার পদক্ষেপ পাইথন প্যাকেজগুলির সাথে কাজ করা সত্যিই সহজ। আপনাকে যা করতে হবে তা হ'ল:

একটি ডিরেক্টরি তৈরি করুন এবং এটি আপনার প্যাকেজের নাম দিন। এটিতে আপনার ক্লাস রাখুন। ডিরেক্টরিতে একটি init .py ফাইল তৈরি করুন

উদাহরণস্বরূপ: যদি আপনি একটি ফোল্ডার যেখানে আপনি সব কাস্টম সেখানে ক্লাস রাখছেন ফ্রেমওয়ার্ক নামক আছে এবং আপনার কাজ শুধু একটি তৈরি করা Init ফ্রেমওয়ার্ক নামে ফোল্ডারের ভিতরে .py ফাইল।

এবং আমদানি করার সময় আপনাকে এই ফ্যাশনে আমদানি করতে হবে --->

ফ্রেমওয়ার্ক আমদানি বেস থেকে

সুতরাং E0401 ত্রুটিটি অদৃশ্য হয়ে যায় ফ্রেমওয়ার্ক হ'ল ফোল্ডারটি যেখানে আপনি সবেমাত্র init .py তৈরি করেছেন এবং বেসটি আপনার কাস্টম মডিউল যা আপনাকে আমদানি করতে হবে এবং আশা করি এটির সাহায্যের জন্য কাজ করার প্রয়োজন !!!!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.