Python 3.12でのCレベル再帰の上限導入の問題
Python 3.11以前では、Pythonレベルの再帰はCレベルの再帰を常に引き起こしていました。 ですので、Pythonの再帰の深さはCレベルのスタックの大きさに依存していました。 Linu...
54 search resultsShowing 1~20 results
You need to log-in
Python 3.11以前では、Pythonレベルの再帰はCレベルの再帰を常に引き起こしていました。 ですので、Pythonの再帰の深さはCレベルのスタックの大きさに依存していました。 Linu...
Pythonの標準ライブラリfunctoolsにある、cacheとlru_cacheデコレータですが、メソッドにも使えそうですが、使ってはいけないということが下記のビデオで詳しく解説されています...
numpyやpandasのオブジェクトを多数生成したりして、多くメモリ消費する高負荷で複雑な計算を実行した際、timeitで実行した際の実行時間よりも、普通に実行した際の実行時間が長くなるという...
こんな記事を見つけたので気になって調べてみました。 この記事は、Pythonの開発者専用のメーリングリストに、Sam GrossというFacebookの開発者が投稿した、GILを外したCPyth...
CPythonの関数が参照している名前(ローカル変数と自由変数を除く)は、その関数のコードオブジェクトのco_namesに保存されていることは以前書きました。co_namesは、グローバル変数名...
GitHubにあるレポジトリの最初のコミットを見つける方法です。 InsightsタブのNetworkを選択し、Network graphが表示されたら、 Shift + ←キーでgraphの左...
sys.modulesに登録しないでモジュールをソースファイルからロードし、そのモジュールを変数にアサインして、そのモジュールの利用をその変数を通してのみの利用に限定したい場合、importli...
__setattr__は、属性への代入をカスタマイズするためのスペシャルメソッドですが、propertyのsetterよりも優先順位が高いです。したがって、下記のように、xにsetterが定義さ...
pickleは、ファイルなどに保存するために、Python オブジェクトをバイト列にシリアライズするための標準ライブラリです。Pickle可能なオブジェクトはpickable、シリアライズされた...
PyQtでウィジットを作成するときなど、関数やメソッドをコールバックとして利用するために気軽にlambdaを作成してパラメータを減らしたものをコールバックとしてセットするというようなことをするこ...
次の例は、基底クラスFooのgetterプロパティxに派生クラスでsetterを追加する方法です。 class Foo: def __init__(self): self._x = "I'm F...
GitHub Pagesは、静的なウェブサイトのホスティングサービスです。 GitHub Pagesのデフォルトの静的サイトジェネレータはJekyllで、JekyllのソースリポジトリをGitH...
単調増加の数列を、連続する値毎にまとめる簡潔な記述方法があったのでメモしておきます。 import itertools sample = [1,2,3,5,6,7,9,10] [list(g) ...
下記の関数定義中の変数barは、関数のブロック内にbarの定義がないためグローバル変数と解釈されます。 def foo(): print(bar) 下記のコードは、fooの呼び出し前にグローバル...
NumPyの数値型が、対応するPythonの数値型を継承しているかどうか調べてみました。 import builtins import numpy as np np_numt = [ np.bo...
VirtualBox 6.0ではHyper-Vとの共存が可能になったとのことでしたが、私の環境で試してみたらVirtualBox内のDebianが立ち上がらず、うまくいきませんでした。こちらのO...
通常、class文によって定義されたクラスのインスタンスは自由にデータメンバを追加することができ、属性の値は__dict__メンバ変数に保存されていますが、クラスに__slots__を定義し、明...
Pythonの代入文では、複数の値を複数の名前にバインドできます。 a, b = 1, 'foo' この用法は、通常の1つの名前への代入と連ねて使用することも可能です。 a, b = c = 1...
Pythonの主なQt biding パッケージは、PyQt5, PyQt4, PySideがあり、自分の環境のQtにあわせてimport PyQt5などと書いてしまうと、別のQt環境をもつユー...
派生クラスでオーバーライドした基底クラスのメソッドをコールする方法は、次のように基底クラス内に定義された関数 (Unbound method) に派生クラスのオブジェクトを第一引数として渡すこと...
54 search resultsShowing 1~20 results
Qiita is a knowledge sharing service for engineers.