問題解決しました。Pythonを起動しても「ImportError: No module named site" というエラーでPythonを起動する。
2022-02-07 21:07:51
質問です。
Pythonへのパスを設定しましたが、いつもエラー "ImportError が発生します。Pythonを起動すると、No module named site"というエラーが出ます。
[root@tZ game]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/lib/python2.7:. :/usr/lib/python2.7:/usr/lib/python2.7/site-packages:/usr/bin/python:/usr/lib64/python2.7。
[root@tZ game]# echo $PYTHONHOME
/usr/bin/
[root@tZ game]# echo $PYTHONPATH
/usr/bin/
[root@tZ game]# whereis python
pythonです。/usr/bin/python /usr/bin/python2.7 /usr/lib/python2.7 /usr/lib64/python2.7 /usr/include/python2.7 /usr/share/man/man1/python.1. gz
[root@tZ game]# which python
/usr/bin/python
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/lib/python2.7:. :/usr/lib/python2.7:/usr/lib/python2.7/site-packages:/usr/bin/python:/usr/lib64/python2.7。
[root@tZ game]# echo $PYTHONHOME
/usr/bin/
[root@tZ game]# echo $PYTHONPATH
/usr/bin/
[root@tZ game]# whereis python
pythonです。/usr/bin/python /usr/bin/python2.7 /usr/lib/python2.7 /usr/lib64/python2.7 /usr/include/python2.7 /usr/share/man/man1/python.1. gz
[root@tZ game]# which python
/usr/bin/python
#----------- 質問のポイント -----------
[root@tZ game]# python
ImportError: site という名前のモジュールがありません
[root@tZ game]# python
ImportError: site という名前のモジュールがありません
#---------- ビュー・イシュー・ポイント関連 -----------。
[root@tZ game]# find / -name site.py
/usr/lib64/python2.7/site.py
/usr/lib64/python2.7/site.py
#--------- 現在のエラーケース -v の表示 ---------- です。
[root@tZ etc]# python -v
# zipimportフックのインストール
zipimport をインポートする # 組み込み
# インストールされた zipimport フック
ImportError: site という名前のモジュールがありません。
# clear __builtin__. _
# sys.path をクリアする
# sys.argvをクリア
# sys.ps1 をクリアする
# zipimportフックのインストール
zipimport をインポートする # 組み込み
# インストールされた zipimport フック
ImportError: site という名前のモジュールがありません。
# clear __builtin__. _
# sys.path をクリアする
# sys.argvをクリア
# sys.ps1 をクリアする
# .... 記載されていない詳細情報
#--------- Baiduビューの通常表示 -v 表示の場合 ---------...
# python -v
# zipimportフックをインストールする
zipimport をインポートする # 組み込み
# インストールされた zipimport フック
# /usr/lib/python2.7/site.pyc は /usr/lib/python2.7/site.py にマッチします。
zipimport をインポートする # 組み込み
# インストールされた zipimport フック
# /usr/lib/python2.7/site.pyc は /usr/lib/python2.7/site.py にマッチします。
import site # precompiled from /usr/lib/python2.7/site.pyc #---------------- 差分
# /usr/lib/python2.7/os.pyc は /usr/lib/python2.7/os.py にマッチします。
import os # precompiled from /usr/lib/python2.7/os.pyc
インポート errno # ビルトイン
import posix # 組み込み
# /usr/lib/python2.7/os.pyc は /usr/lib/python2.7/os.py にマッチします。
import os # precompiled from /usr/lib/python2.7/os.pyc
インポート errno # ビルトイン
import posix # 組み込み
サイトをインポートする際に、コンパイル済みのsite.pycファイルも必要なようです。
基本的には、モジュールパスの問題で、インポートしたライブラリモジュールが見つからないと想定されます。
解決策
Pythonのパスに関連する環境変数の意味を確認する。
PYTHONHOME。Pythonの標準ライブラリを指定します。
PYTHONPATH: Pythonのルックアップモジュールファイルを展開するためのパス。
PYTHONPATH: Pythonのルックアップモジュールファイルを展開するためのパス。
ここでは、siteモジュールのインポート時にエラーが発生するため、PYTHONPATHにsiteモジュールのパスを追加する必要があります。
サイト関連ファイルを探すためのパス。
[root@tZ etc]# find / -name site.py*.
/usr/lib64/python2.7/site.pyc
/usr/lib64/python2.7/site.py
/usr/lib64/python2.7/site.pyo
/usr/lib64/python2.7/site.pyc
/usr/lib64/python2.7/site.py
/usr/lib64/python2.7/site.pyo
環境変数にパスを追加します。
エクスポート PYTHONPATH=$PYTHONPATH:/usr/lib64/python2.7
の効果を確認する。
[root@tZ etc]# python -v
# zipimportフックのインストール
zipimport をインポートする # 組み込み
# インストールされた zipimport フック
# /usr/lib64/python2.7/site.pyc は /usr/lib64/python2.7/site.py にマッチします。
import site # precompiled from /usr/lib64/python2.7/site.pyc
# /usr/lib64/python2.7/os.pyc は /usr/lib64/python2.7/os.py にマッチします。
# zipimportフックのインストール
zipimport をインポートする # 組み込み
# インストールされた zipimport フック
# /usr/lib64/python2.7/site.pyc は /usr/lib64/python2.7/site.py にマッチします。
import site # precompiled from /usr/lib64/python2.7/site.pyc
# /usr/lib64/python2.7/os.pyc は /usr/lib64/python2.7/os.py にマッチします。
解決済みであることを示す。
で直接Pythonを起動してみてください。
[root@tZ etc]# python
Python 2.7.5 (デフォルト, 2014年06月17日 18時11分42秒)
[GCC 4.8.2 20140120 (Red Hat 4.8.2-16)] on linux2
詳細は "help", "copyright", "credits" または "license" と入力してください。
>>>
Python 2.7.5 (デフォルト, 2014年06月17日 18時11分42秒)
[GCC 4.8.2 20140120 (Red Hat 4.8.2-16)] on linux2
詳細は "help", "copyright", "credits" または "license" と入力してください。
>>>
問題が解決されたことを確認します。
関連
-
Solve 'DataFrame' オブジェクトに 'sort' 属性がない。
-
SyntaxError: 構文が無効です。
-
Python pipのインストールと使用方法の詳細
-
ImportError: Windows の Django でプロジェクトを作成するとき、django.core solution という名前のモジュールがない。
-
pip AttributeError: 'module' オブジェクトには 'SSL_ST_INIT' という属性がありません。
-
AttributeError: モジュール 'tensorflow'に属性 'placeholder' がない問題
-
[Python 標準ライブラリ] math--math 関数
-
Pythonモジュールの簡単な説明(とても詳しいです!)。
-
Selenium issue IOError: [Errno 2] そのようなファイルまたはディレクトリがありません: 'nul'
-
Pythonソケットプログラミング [WinError 10061] ターゲットコンピュータがアクティブに拒否しているため、接続できない。
最新
-
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の属性エラーです。AttributeError: 'Series' オブジェクトに 'reshape' 属性がない Solution
-
Pythonの実行時にSyntaxError: invalid syntaxが発生した場合の対処方法
-
PythonがNameError: name '_name_' is not definedのようなエラーを発生させる。
-
scipyという名前のモジュールがない場合の解決策|エラー
-
Python3 xlsxwriterモジュールのインストール
-
TypeError: 'numpy.ndarray' オブジェクトが呼び出し可能でないエラー処理
-
Python OSError: [Errno 22] 無効な引数: solution
-
Python プロンプト。TypeError: 'NoneType' オブジェクトは呼び出し可能なソリューションではありません。
-
Python3 はエンコーディングの問題を解決します: UnicodeEncodeError: 'gbk' codec can't encode character '\xa9' in position
-
Anaconda 詳細インストールおよび使用チュートリアル(画像付き)