問題タブ [pkg-resources]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
642 参照

python - pkg_resources.resource_filename: 完全修飾共有ライブラリ名を返す方法は?

Darwin 上の Anaconda Python3.5 では、次の関数

import pkg_resources pkg_resources.resource_filename('icqsol', 'icqLaplaceMatricesCpp')

のようなものを返します

'//anaconda/lib/python3.5/site-packages/icqsol-0.3.19-py3.5-macosx-10.5-x86_64.egg/icqsol/icqLaplaceMatricesCpp'

一方、私が必要なのは

'/anaconda/lib/python3.5/site-packages/icqsol-0.3.19-py3.5-macosx-10.5-x86_64.egg/icqsol/icqLaplaceMatricesCpp.cpython-35m-darwin.so'

この特定のケースでは、接尾辞「.cpython-35m-darwin.so」に注意してください。Python 3.5 を使用している場合、setuptools はこのサフィックスを自動的に追加すると思います。Python 2.7 を使用している場合は存在しません。

私が使用できるように、完全修飾共有ライブラリを返す方法を知っている人はいますか

import ctypes sharedLibName = ... lib = ctypes.cdll.LoadLibrary(sharedLibName))

? 助けてくれてありがとう

0 投票する
3 に答える
399 参照

python - Python 配布 URL を取得するにはどうすればよいですか?

それらの setup.py Python パッケージで、いくつかの情報が提供されます。この情報は、卵の PKG_INFO ファイルで見つけることができます。

パッケージをインストールしたら、どうすればそれらにアクセスできますか?

たとえば、次のモジュールがあるとします。

Python を使用して、setup.py で提供された情報を取得するにはどうすればよいですか?

私はそれに似たものを考えていました:

何か案が?

0 投票する
1 に答える
660 参照

python - pkg_resources がインポートされるまで、同じ名前空間ツリーのパッケージからインポートできません

どういうわけか個別に再現できないという奇妙な問題がありますが、それは製品コードに表示され、もちろん製品コードは公開できません。

引数のためns.serverns.protobuf、 と の 2 つのパッケージがあります。後者は、プロジェクトの protobuf 固有の拡張機能を実装しています。どちらのパッケージも、setup.py で名前空間パッケージを適切に宣言し、ボイラープレートの pkg_resources を次のように持っています__init__.py

今、いくつかの奇妙な理由で、私はこれを得ます:

そのため、pkg_resources をインポートして修正するまで、私の名前空間はすべておかしくなっているようです。それほど悪くはありません。回避策は、最初に pkg_resources をインポートすることです。何が起こっているのか理解したいだけです。

0 投票する
1 に答える
145 参照

python-3.x - pkg_resources の例外からの情報を出力します

pkg_resources.require を使用して、必要なすべてのモジュールが正しいバージョンにインストールされているかどうかを確認したいと思います。すべて正常に動作しますが、pkg_resources で pkg_resource.VersionConflict が発生した場合に情報を出力する方法がわかりません。

インストールされている ccc のバージョンが 1.0.0 であるため、この例では例外が発生します。

0 投票する
1 に答える
632 参照

python - Python pkg_resources.get_distribution alternative

I have some code that's extremely slow, I've traced it back to the use of pkg_resources.get_distribution, I'm doing this:

Is there an alternative library/method I can use that does the same thing? 

0 投票する
0 に答える
1108 参照

python - Python - 絶対ファイル パスを使用せずに、egg ファイルの .so ファイルからモジュールをインポートする方法

コマンドを使用してpyahocorasickライブラリを構築python setup.py bdist_eggし、PySpark ジョブ用に Spark にアップロードしました。

pkg_resources.resource_filename()ただし、pyahocorasick 内の .so ファイルは、セキュリティ上の理由から、Spark クラスターのメソッドを介してインポートすることはできません。

これは、pyahocorasick が .so をインポートする方法です。

絶対ファイルパスから読み取る必要なしに、または他の方法resource_stream()で.so をインポートできますか? resource_filename()皆さんありがとう。

ところで、他の理由で、Spark クラスターのすべてのノードに pyahocorasick をインストールすることはできません。そのため、後で使用するために卵を圧縮したディストリビューションをアップロードする必要があります。