これまで私が自分のカスタムパッケージをPythonで使用/インポートするためには、自分の.bash_profileを編集して、$ PATH環境変数に追加する必要がありました。モジュールをPythonの検索パスにする
>> echo $PATH
/Users/MYNAME/google-cloud-sdk/bin:/Users/MYNAME/anaconda/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/Users/MYNAME/Documents/Python_Programs/MYPACKAGE1:/Users/MYNAME/Documents/GitRepos/MYPACKAGE2
私のパス変数MYPACKAGE1とMYPACKAGE2が含まれています。 前者は文字通り単なる.pyファイルが入ったフォルダです。後者は、従来のパッケージフォルダ構造に従う。
>> import sys
>> sys.path
['',
'/Users/MYNAME/anaconda/bin',
'/Users/MYNAME/anaconda/lib/python36.zip',
'/Users/MYNAME/anaconda/lib/python3.6',
'/Users/MYNAME/anaconda/lib/python3.6/lib-dynload',
'/Users/MYNAME/anaconda/lib/python3.6/site-packages',
'/Users/MYNAME/Documents/Python_Programs/MYPACKAGE1',
'/Users/MYNAME/Documents/GitRepos/MYPACKAGE2',
'/Users/MYNAME/anaconda/lib/python3.6/site-packages/Sphinx-1.5.6-py3.6.egg',
'/Users/MYNAME/anaconda/lib/python3.6/site-packages/aeosa',
'/Users/MYNAME/anaconda/lib/python3.6/site-packages/IPython/extensions',
'/Users/MYNAME/.ipython']
グレート、何ら問題はいずれかのパッケージからインポートしない:注意すべき
ことの一つは、私のPYTHONPATHが
>> echo $PYTHONPATH
>>
明らか空ですが、Pythonで、私はsys.path
を見ればです。
MYPACKAGE3/
bin/
README.md
CHANGES.txt
setup.py
MANIFEST.IN
my_module/
__init__.py
sub_module1.py
sub_module2.py
MYPACKAGE2は私のパス
>> echo $PATH
/Users/MYNAME/google-cloud-sdk/bin:/Users/MYNAME/anaconda/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/Users/MYNAME/Documents/Python_Programs/MYPACKAGE1:/Users/MYNAME/Documents/GitRepos/MYPACKAGE2:/Users/MYNAME/Documents/GitRepos/MYPACKAGE3
にこれを追加しましたが、何らかの理由で私はpythonでそれをインポートすることはできません、それはだと同じ構造を有する第三パッケージを作りました私のsys.pathにはありません(sys.pathはまったく同じです)。
>> import my_module
ModuleNotFoundError: No module named 'my_module'
何が変更されたかわかりません。私は何が欠けていますか?
ありがとうございます。
申し訳ありませんが、タイプミスでした。間違いなくそこにあります。 – RSHAP
3番目のパッケージパスを追加した後にsys.pathを貼り付け、パッケージのインポート中にエラーが発生しました。 –
sys.pathはこれまでとまったく同じです。 ModuleNotFoundエラーを投稿しました – RSHAP