問題タブ [cpython]
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.
python - Python からの C 型の呼び出しの防止
Python から C 型を呼び出す (インスタンスを作成する) ことを防ぐ正しい方法は何ですか?
tp_init例外を発生させる を提供することを検討しましたが、私が理解しているよう__new__に、型で直接呼び出すことができます。
AC 関数は、この型のインスタンスを返します。これが、この型のインスタンスを作成するための唯一の方法です。
編集:私の意図は、私のタイプのユーザーが誤って誤って使用した場合に例外を受け取ることです。C コードは、Python から誤って作成されたオブジェクトで関数を呼び出すとクラッシュするようなものです。これは珍しいことだと思います。これまでの私の C 拡張型はすべて、Python からインスタンス化したときにうまく機能しました。私の質問は、この制限を提供する通常の方法があるかどうかです。
python - Python オブジェクトにはリファラーがありませんが、weakref 経由でアクセスできますか?
gc.get_referrers(obj) がオブジェクトの空のリストを返すことは可能である必要がありますが、オブジェクトは引き続き弱い参照を介してアクセスできますか?
もしそうなら、このオブジェクトがガベージコレクションされていない原因を特定するにはどうすればよいでしょうか?
編集:この場合、コードサンプルがどのように役立つか正確にはわかりません-明らかに強力な参照がどこかにありますが、それを見つけることができれば気が遠くなります. オブジェクトへの強い参照はすべて get_referrers() によって識別されるという印象を受けました。
編集:解決済み。強い参照を持つ変数を見つけました - それはゲーム イベント ループ内にありましたが、クラス変数ではなかったため、get_referrers はそれを取得していませんでした。
python - CPython または IronPython?
まったく新しいクロス プラットフォーム GUI アプリ、CPython または IronPython に何を使用しますか?
-ライセンス
/ 自由
- 開発
- - ドキュメント
- - エディタ
- - ツール
- ライブラリ
- パフォーマンス
- 移植性
どちらかで何が一番うまくできますか?
- ネットワーキング
- データベース
- GUI
- システム
- マルチスレッド / 処理
python - IronPythonとPython.NET
PythonコードからC#で記述されたいくつかの.NETアセンブリにアクセスしたいと思います。
少し調べてみると、2つの選択肢があることがわかりました。
- .NETインターフェース機能/サポートが組み込まれたIronPython
- Python.NETパッケージを使用したPython
両方のソリューション間のトレードオフは何ですか?
c++ - CPythonはバイトコードインタープリターですか?
CPythonのコンテキストでは、「バイトコードインタープリター」の概念は実際にはわかりません。誰かが全体像に光を当てることができますか?
CPythonがpycファイル(バイトコードファイル)をコンパイルして実行することを意味しますか?では、pyファイルをpycファイルにコンパイルするのは何ですか?また、JythonはCPythonとどのように異なりますか(異なる言語で実装されている場合を除く)。
また、PythonがC++の解釈であることもどこかで読みました。これは正しいです?そして、それはどういう意味ですか?
私はまだPythonに慣れていないので、ばかげた質問をしても許してください...どうもありがとうございました!
python - Pythonのprintステートメントの改行生成動作をオーバーライドする
次のような多くの印刷ステートメントを含む生の電子メールをエンコードするためのレガシーコードがたくさんあります。
これはすべてメールに適していますが、現在は同じコードを使用してHTTPリクエストを出力しています。'\n'問題は、HTTPがを必要とするのにPythonのprintステートメントが出力されることです'\r\n'。
Python(少なくとも2.6.4)は、次のようにPRINT_NEWLINE実装されたprintステートメントの末尾のバイトコードを生成するようです。
したがって、印刷のデフォルトの改行動作をオーバーライドする簡単な方法はないようです。私は次の解決策を検討しました
.replace('\n', '\r\n')ます。これは、マルチパートエンコーディングを使用するHTTPメッセージに干渉します。.write宛先ファイルオブジェクトのラッパーを作成し、メソッドをプロキシしますprint >>f, textされる正規表現を記述します。f.write(text + line_end)line_end'\n''\r\n'3番目のオプションが最も適切だと思います。問題に対するPythonicのアプローチがどうなるかを聞くのは興味深いでしょう。
python - xrange内部構造へのアクセス
ctypesを使用して内部のPython構造からデータを抽出しようとしています。つまり、xrangeの4つのフィールドを読み取ろうとしています。
Python自体の中でそのようなフィールドに到達するための標準的な方法はありますか?
python - Qt CreatorデバッガーのPyStringの内容?
内容を確認したい PyString* オブジェクトがあります。Qt Creator のデバッガーを使用して PyString のテキストを表示する方法はありますか?
違いがある場合、Qt Creator は GDB のフロント エンドです。
python - IronPythonはCPythonの代わりに使用できますか?
IronPythonは、CPythonの代わりにドロップインできるようになりましたか?
明確にするために:つまり、IronPythonは元々CPython用に作成されたアプリケーションを実行できます(もちろん、.NETは関与しません)