2017-12-31 29 views
0

を持っている私は.pyファイルを作り、以下の輸入持つ"hello.py"と呼ばれる:これを実行している間、私は取得しています「モジュール」オブジェクトが属性「地元」

from setuptools import setup,Extension 
from Cython.Build import cythonize 
setup(name = 'increment app',ext_modules = cythonize("hello.pyx")) 

を:

はAttributeError:」をモジュール 'オブジェクトに属性' locals 'がありません。

私はVisual Studio C++ 2008バージョンで作業しています。

コマンドプロンプトpip install cython私はエラーは表示されませんでしたが、サイモンをダウンロードしたりインストールしたりしませんでした。

@DavidWはここ

AttributeErrorTraceback (most recent call last) 
C:\SPB_Data\setup.py in <module>() 
     1 from setuptools import setup,Extension 
----> 2 from Cython.Build import cythonize 
     3 setup(name = 'increment app',ext_modules = cythonize("hello.pyx")) 
C:\Users\kalachand\AppData\Local\Enthought\Canopy32\edm\envs\User\lib\site-packages\Cython\Build\__init__.py in <module>() 
----> 1 from .Dependencies import cythonize 
     2 from .Distutils import build_ext 
C:\Users\kalachand\AppData\Local\Enthought\Canopy32\edm\envs\User\lib\site-packages\Cython\Build\Dependencies.py in <module>() 
    176 
    177 
--> 178 @cython.locals(start=cython.Py_ssize_t, end=cython.Py_ssize_t) 
    179 def line_iter(source): 
    180  if isinstance(source, basestring): 
AttributeError: 'module' object has no attribute 'locals' 
+0

トレースバックを追加できますか?エラーが発生している場所を確認すると便利です。 – DavidW

+0

@DavidWあなたが答えセクションで欲しかった完全なトレースバックをご覧ください。また、私はあなたに連絡して、プロセス全体を手伝うことができる方法があります。ここに1.5日間真っ直ぐに立ち往生した。それは15分以上かかることはありません。ありがとう.. –

+0

この種のことはいつも修正するのが難しいです(そして、私が実際にやっていることは間違いありません)。あなたは[cythonと呼ばれる別のモジュールを作成することができました](https://stackoverflow.com/a/15130088/4657412) - 'import cython;を実行して確認してください。 print(cython .__ファイル__) '。 – DavidW

答えて

0

guideline you seem to be followingあなたはsetup.pyにこのコードを入れて、かなり具体的な方法でそれを呼び出すように指示---完全なトレースバックです。

python setup.py build_ext --inplace 

ガイドラインはdistutils、ないsetuptoolsを使用しています。

ガイドラインはあなたのいくつかの他のコードをCythonize、その引数"hello.pyx"も間違って見えます(またはガイドラインでは、簡単なprint("Hello World")例のように、いくつかの他のコードとhello.pyを交換し、あなたの質問にコードを移動する方法について説明します上記のようにsetup.pyまで)。

ドキュメントから逸脱する理由がある場合は、その逸脱の理由を説明し、この特定の逸脱が命令の失敗を引き起こすかどうかを述べる必要があります。テストなしで複数の無償の変更を行うことは、あなたの時間と私たちを無駄にします。あなたの質問をMCVEにするためのガイダンスも参照してください。

+0

私の逸脱の説明はここにあります:https://stackoverflow.com/a/28617830/4657412最初にdistutilsを使い始めたと思いませんか? –

+0

私が想像しているのは二次的なものであり、主に質問を自己完結して十分詳細にする必要があるという証拠として役立ちます。 – tripleee

+0

わかりました!手元にある問題に戻ることはできますか?参考までに、distutilsを使って、Cythonをインポートするのと同じ問題が発生しました。 –

関連する問題