問題タブ [ironpython]
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.
.net - IronPython のプロキシ オブジェクト
基になる構造を動的に提示する必要がある IronPython でプロキシ オブジェクトを作成しようとしています。プロキシ自体に関数とプロパティを持たせる必要はありません。ランタイムですべての呼び出しをキャッチしようとしています。関数呼び出しをキャッチするのは簡単です。オブジェクトにgetattr () 関数を定義するだけでよく、下層のレイヤーに適切な関数が存在するかどうかをチェックし、関数のようなオブジェクトを返します。
プロパティに問題があります - 呼び出しコンテキストを区別する方法がわかりません。私のプロパティは左辺値または右辺値として呼び出されます:
o = myproxy.myproperty #基本的な.myproperty_get () を呼び出す必要があります
また
myproxy.myproperty = o #基本的な.myproperty_set (o) を呼び出す必要があります
Python の特殊関数のリストを見ましたが、適切なものが見つかりませんでした。
また、exec() と組み込みの property() 関数を組み合わせて、オンザフライでオブジェクトにプロパティを作成しようとしましたが、IronPython 1.1.2 には「新しい」モジュール全体が欠けていることがわかりました (これは IronPython 2.x に存在します)。ベータ版ですが、.NET 2.0 フレームワークのため、IP 1.x を使用します)。
何か案は?
c# - C# での単体テスト用の IronPython
Python は、コンパイルされたどの言語よりも多くの生産性を提供することを知っています。C# でプログラミングしており、ユニット テスト ケースを C# 自体で記述する必要があります。単体テスト用に記述したコードの量を見ると、元のコードの約 10 倍になります。
C# ではなく、IronPython で単体テスト ケースを作成することは理想的な選択ですか? 体がそのようにしたことがありますか?私はいくつかのテストケースを書きましたが、それらは良いようです。しかし、毛むくじゃらのとがったマネージャーは受け入れません。
.net - IronPython で Web サービスを作成するにはどうすればよいですか?
IronPython で .Net Web サービスを作成するにはどうすればよいですか? 前処理または後処理なしで動的に行うことが望ましいです。
.net - IronPythonで定義されたメソッドとタイプに属性を追加するにはどうすればよいですか?
IronPythonは属性をサポートしていないので、IronPythonクラスを属性で、おそらくリフレクションで装飾する別の方法があるかどうか疑問に思っています。
ironpython - Ironpython Studio フォーム
これは 2 つの部分からなる質問です。ばかげた技術的な質問と、私が慣れていない言語でいくつかのことを行うことを学ぶためのおそらく間違ったアプローチについてのより広範な質問。
スキルを向上させるためだけに、オープンソースアプリでやろうと思っているいくつかの作業のために、いくつかのPython GUIライブラリ(主にwxPythonとIronPython)をいじっています。
日中、私はかなり標準的な C# ボディであり、かなり通常の MS ベースのツール セットを使用しており、新しい視点を得るために Python に注目しています。したがって、Ironpython Studio を使用することは、おそらく少しごまかしています (よし、たくさん)。Visual Studio プロジェクトなどのように見せようとしても、これは問題ではないように思われます。実装するには愚かすぎると思われる単純な動作が 1 つあります。
IE フォームを個別のコード ファイルに保持するにはどうすればよいでしょうか。たとえば、これまでの C# モンキーのように、フォームを相互に呼び出すにはどうすればよいでしょうか。メインフォームに呼び出されるフォームをインポートしようとしましたが、フォームをオブジェクト以外のものとして認識できないようです。新しいフォームは、独自のコード ファイル内のフォーム オブジェクトのように見えます。clr をインポートしています。フォームの「Show」メソッドを呼び出そうとしています。これは正しくありませんか?
私はこれを回避する方法をいくつか試しましたが(私の考えではありそうにありません)、問題は扱いにくいようです。これは私が見ていないだけのものですか、それとも実際には、GUI スクリプトについての考え方を Python に合わせて変更する方が適切でしょうか? Visual Studio シェルのセキュリティから Python を見ようとするのではなく、
.net - NGEN 化されたバイナリで IronPython 2.0 をインストールするにはどうすればよいですか?
MSI パッケージを使用して NGEN 化されたバイナリで IronPython 2.0 をインストールする方法を知っている人はいますか? IronPythonの公式ホームページには、NGEN オプションを使用すると起動時間が大幅に改善されると書かれていますが、何らかの理由でデフォルトでは有効になっていません。それを有効にするためにどの MSI パラメータを渡す必要があるかは実際には述べられていません。また、このサイトでドキュメント ページを見つけることができなかったので、ここの誰かが知っていることを願っています。(明確化:複数のマシンに配布するためにサイレントインストールを行っているため、コマンドラインパラメーターを探しています、ありがとう)
これを尋ねているのは、単純な「hello world」スクリプトの開始時間が、2 GHz 以上の Intel Core 2 Duo と 4Gig を搭載した私のラップトップで 5 ~ 6 秒のオーダーであるためです。そして、これは私が走るたびに起こります。この NGEN オプションがこの問題を解決することを願っています。今と同じくらい遅いので、コンパイルされた言語を使用しているように感じます。
更新: srivatsn には、NGENDLLS=True コマンド ライン パラメーターを使用する正しい答えがありました。
今後の参考のために、IronPython 2.0 をサイレント インストールするために使用した完全な MSI コマンド ラインを次に示します。
Igal に感謝しますが、実際には、複数のマシンへの集中配布のために (msiexec /qn を介して) サイレント インストールを行っています。NGENオプションを有効にするコマンドラインパラメーター(非UI)を知っている人はいますか?
.net - ironpythonにはpywin32拡張機能を置き換えるライブラリがありますか?
pywin32拡張機能を使用する古いPythonコードがいくつかあります。.netから始めて、それをironpythonに移植したいと思います。
古いPythonコードは、pythoncom.com_error、pywintypes.Timeなどを使用し、IDispatchインターフェイスを実装するCOMモジュールをインターフェイスします。
ironpythonの.netライブラリには、COMモジュールとの通信に必要なものがすべて揃っていますか?具体的には、com_errorとTimeを置き換えるものがありますか?
ありがとう。
log4net - IronPythonから.NETコードを呼び出し、log4netアセンブリのロード中にエラーが発生する
log4netを構成し、log4netを使用する.NETコードを呼び出すIronPythonスクリプトがあります。log4netは適切に構成されています。これは、初期化されたことを示すメッセージをログに記録するためです。しかし、.NETクラスを使用しようとすると、「ファイルまたはアセンブリを読み込めませんでした」log4net、...」と報告されます。
いくつかの有用な事実:
- log4netがGACにインストールされていません
- .NETクラスは正しいです、私は他の.NETコードからそれを呼び出しました
- IPYにロードされているlog4netアセンブリは、私の.NETアセンブリと同じフォルダーにあります。
- filemonは、すべてのlog4net.dllアクセスが予期された場所から正常に解決されたことを示しています
- fuslogvwはバインディングエラーを報告しません
- AddReferenceToFileAndPath()を使用して、log4net参照と.NETアセンブリ参照の両方を追加しています。
奇妙なことに、log4netアセンブリがすでにロードされています。別のAppDomainに.NETアセンブリをロードしている必要があります。それがどのように機能するかを知っておくと役に立ちます。
そこに何かアイデアはありますか?ありがとう。
python - IronPythonのDjango
IronPythonでDjangoのインストールを実行することに興味がありますが、ある程度の成功を収めてこれを実行することに成功した人はいますか?
もしそうなら、あなたの経験、パフォーマンスについて教えてください、いくつかのヒント、リソース、そして落とし穴を提案してください。
python - IronPython ウェブフレームワーク
Python 用の優れた Web フレームワークは数多くあるようです。IronPython でこれら (Pylons、Web2Py、Django) を使用した人はいますか?