1

ipython qtconsolePython のインストール ディレクトリ以外から起動しようとすると、インポート エラーが発生します。RUN->cmd.exe; の場合にのみ機能するようです。cd C:\Users\me\python\Python27; ipython qtconsole;.

バッチ ファイルを試してみましたが、インストール ディレクトリのコンテキスト内で実行しないと動作しないようです。いつも不平を言っているように見えるipython-script。これが出力です...(これは、デスクトップとしてCurrentWorkingDirectoryを使用したipython内からのものです)

In [2]: !ipython qtconsole
Traceback (most recent call last):
  File "C:\Users\me\python\Python27\ipython-script.py", line 770, in <module
>
load_entry_point('ipython==0.12', 'console_scripts', 'ipython')()
File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
thon-0.12-py2.7.egg\IPython\frontend\terminal\ipapp.py", line 402, in launch_new
_instance
  File "<string>", line 2, in initialize
  File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
thon-0.12-py2.7.egg\IPython\config\application.py", line 84, in catch_config_err
or
  File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
thon-0.12-py2.7.egg\IPython\frontend\terminal\ipapp.py", line 302, in initialize

  File "<string>", line 2, in initialize
  File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
thon-0.12-py2.7.egg\IPython\config\application.py", line 84, in catch_config_err
or
  File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
 thon-0.12-py2.7.egg\IPython\core\application.py", line 325, in initialize
   File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
thon-0.12-py2.7.egg\IPython\frontend\terminal\ipapp.py", line 297, in parse_comm
and_line
  File "<string>", line 2, in parse_command_line
  File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
thon-0.12-py2.7.egg\IPython\config\application.py", line 84, in catch_config_err
or
  File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
thon-0.12-py2.7.egg\IPython\config\application.py", line 413, in parse_command_l
ine
  File "<string>", line 2, in initialize_subcommand
  File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
 thon-0.12-py2.7.egg\IPython\config\application.py", line 84, in catch_config_err
or
   File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
 thon-0.12-py2.7.egg\IPython\config\application.py", line 349, in initialize_subc
 ommand
   File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
 thon-0.12-py2.7.egg\IPython\utils\importstring.py", line 40, in import_item
  File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
 thon-0.12-py2.7.egg\IPython\frontend\qt\console\qtconsoleapp.py", line 30, in <m
 odule>
   File "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin\lib\site-packages\ipy
 thon-0.12-py2.7.egg\IPython\external\qt.py", line 42, in <module>
 ImportError: Cannot import PySide >= 1.0.3 or PyQt4 >= 4.7

私が言ったように、インストールディレクトリ内から完全に正常に動作し、ENV 変数 PATH、PYTHONPATH、PYTHONHOME がコーシャであると 96% 確信しています。それらを削除することから、一度に1つのディレクトリを完全に過負荷にするまで、結果に変化はありませんでした。

そして、Wow6432None Python エントリが存在することを確認しました (それらを汚染しないようにしました)。

このようなエラーが発生するモジュールは Ipython だけではありません (解決策も同じです)。

編集::私はスタート メニューのエントリを掘り下げました。'start in' プロパティを変更した後、qtconsole を起動できましたが、現在のディレクトリに対してこのインポートが実行されている理由がよくわかりません。

4

2 に答える 2

0

これは、直接定義されていない場所にある qtconsole の依存関係に関係しているPATHと思います。また、モジュール検索 PATHS にいくつかの競合があったと思います。

私が見つけた最も簡単な解決策は、環境変数を使用することでしたPYTHONPATH

最初の投稿からしばらく経ち、それ以来いくつかのことが変更されていますが、重要な要因は次のとおりだと思います。

- 64 ビット Windows にインストールされた 32 ビット Python に注意してください。

- PYTHONPATH を使用して、「/install-dir/Lib」などの重要なサブディレクトリを含めます。

それでも環境変数に問題がある場合は、フェイルセーフとして絶対コマンドを使用してください (これらをスクリプトにまとめて使いやすくします)、

C:\Users\johnny42\python\Python27\pythonw.exe
C:\Users\johnny42\python\Python27\ipython-script.py qtconsole

上記の例は、1 行にある必要があります。コピーして貼り付けるだけではいけません。

于 2013-05-03T15:36:37.910 に答える
0

64 ビット Windows OS で Python 32 ビットを使用しています。私も同様のエラー "c:\cpd-svn\branches\qt-4.8\win32-12-01\install\bin" を持っています。どこに設定されているかわかりません。Python がこのパスをどこから取得しているかについての調査結果を共有していただけますか? そして、どのパスで更新する必要がありますか?

于 2013-09-11T09:21:14.653 に答える