前提・実現したいこと
現在pythonでAフォルダのモジュールをBフォルダで読み込みたいのですが,読み込めません..
python初心者で,いろいろ調べてはみましたが,解決しませんでした..
フォルダ構成
pythonというプロジェクトに以下の構成
- src
| init.py
| HelloWorld.py
- tests
| test.py
__init__.py
python
1from . import HelloWorld
HelloWorld
python
1class HelloWorld: 2 def __init__(self, say): 3 self.say = say 4 5 def hello(self): 6 hello = 'Hello' + self.say 7 return hello
test.py
python
1from .src import HelloWorld #ここが分からないです 2 3print(HelloWorld.HelloWorld('hello').hello())
srcフォルダを読み込みたいのですが,全くうまくいきません.
発生している問題・エラーメッセージ
実行方法は
1,anacondaのrootからopen terminalからコマンドラインを起動
2.パスを,c:\python\testsに移動
3.コマンドを,python test.py
と実行しております.
以下のエラーメッセージが表示されます.
ModuleNotFoundError: No module named '__main__.src'; '__main__' is not a package
試したこと
- 環境変数をプロジェクト直下でPATHを通す.
- sys.pathを試す.
補足情報(FW/ツールのバージョンなど)
- python version 3.6.8 :: Anaconda
すみませんが,ご助力お願いします.
以上です.
どうやって実行しているのか書かれていない
すみません.
実行方法は
1,anacondaのrootからopen terminalからコマンドラインを起動
2.パスを,c:\python\testsに移動
3.コマンドを,python test.py
と実行しております.
自作モジュールを呼び出したいのなら、モジュールの検索パスを調べるべきです。
https://note.nkmk.me/python-import-module-search-path/
ご質問の内容とは関係ないですが質問文中のコード用マークダウン
```言語
の「言語」は「言語の種類」を指定する目的のものであってソースファイルの名前を指定するものではありません。
```init
```HelloWorld
のように書いてはいけません。
```Python
で統一してください。ファイル名はコードタグの外側にバッククォート一つで囲んで
`__init__.py`
```python
from . import HelloWorld
```
のように書くのがよいでしょう。質問文の記述法が不適切なので編集して訂正していただけますか?
KSwordOfHasteさんありがとうございます。修正します。

回答2件
あなたの回答
tips
プレビュー