[解決済み] Pythonに別のフォルダからインポートさせることができない
2023-01-17 12:05:19
質問
Pythonがサブフォルダにあるモジュールをインポートできないようです。インポートされたモジュールからクラスのインスタンスを作成しようとするとエラーが表示されますが、インポート自体は成功します。以下は私のディレクトリ構造です。
Server
-server.py
-Models
--user.py
以下はserver.pyの内容です。
from sys import path
from os import getcwd
path.append(getcwd() + "\\models") #Yes, i'm on windows
print path
import user
u=user.User() #error on this line
そしてuser.py。
class User(Entity):
using_options(tablename='users')
username = Field(String(15))
password = Field(String(64))
email = Field(String(50))
status = Field(Integer)
created = Field(DateTime)
エラーは AttributeError: 'module' オブジェクトには 'User' という属性がありません。
どのように解決するのですか?
というファイルを作成する必要があると思います。
__init__.py
というファイルを作成し、pythonがそれをモジュールとして扱えるようにする必要があると思います。
そうすると、できるようになります。
from Models.user import User
の中にコードを入れることができます。
__init__.py
(例えば、いくつかの異なるクラスが必要とする初期化コード) を含めることもできますし、空白のままにしておくこともできます。 しかし、それはそこになければなりません。
関連
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonでファイルやフォルダを削除する方法は?
-
[解決済み] Pythonで文字列の部分文字列を取得するにはどうすればよいですか?
-
[解決済み] Pythonの辞書からキーを削除するにはどうしたらいいですか?
-
[解決済み] なぜC++はPythonよりもstdinからの行の読み込みが遅いのですか?
-
[解決済み] Pythonでファイル名から拡張子を抽出する
-
[解決済み] virtualenvで異なるバージョンのPythonを使用する
-
[解決済み] Pythonでパスから拡張子なしでファイル名を取得する方法は?
-
[解決済み】なぜPythonはこのJSONデータをパースできないのですか?[終了] PythonがこのJSONデータをパースできないのはなぜですか?
-
[解決済み] Pandasのデータフレームでタプルの列を分割するにはどうしたらいいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 同じディレクトリやサブディレクトリ内のクラスをインポートする方法は?
-
[解決済み] Pandasのデータフレームでタプルの列を分割するにはどうしたらいいですか?
-
[解決済み] バブルソートの宿題
-
[解決済み] Python 3でバイナリデータを標準出力に書き込むには?
-
[解決済み] 古いバージョンのPythonにおける辞書のキーの並び順
-
[解決済み] Pythonによる一対のクロスプロダクト [重複] (英語)
-
[解決済み] if 節の終了方法
-
[解決済み] Pythonでファイルの読み込みと上書きをする
-
[解決済み] virtualenvsはどこに作成するのですか?
-
[解決済み] データクラスとtyping.NamedTupleの主な使用例