Python3とWarlus operatorの話。




:= ⇦なんか可愛い

ぼちぼち遊びで解いてるLeetCode。

374. Guess Number Higher or Lowerを解いた後にいい感じの解き方あるかなーってDiscussを流し見していると、こんな解答があった。

やってることは自分で実装した二分探索と同じことをやっているが、その中の解法でこんな書き方あったなってことでメモがてら残しておく。

ちなみにその書き方はこれ。

while (res := guess(myGuess)) != 0:

名前を知らなかったけどWarlus演算子っていうらしい。セイウチって呼んでた。
:= ⇦目と牙に見えますよね?だからWarlus(セイウチ)ってことらしいです

んで、上のコードのやっていることとしては

res = guess(myGuess)
while res != 0:

と同じで、これを1行で書けるよーってこと。
機能自体はPython3.8のリリースノートに書いてあったので結構前に使えるようになっていたはずなのですが、そこまで最新機能を追いかけていなかったのでここでメモとして残して勉強したってことで。

コメント

このブログの人気の投稿

Braveブラウザ(iPhone,iPad)にオフラインでもYouTubeの動画が視聴可能なPlaylist機能が追加されていたので使い方をまとめてみた。

自作のChrome Extensionをインポートした時に "Invalid value for 'content_scripts[0].matches[0]': Empty path."というエラーが出たので解決した

Braveブラウザの同期機能をiPhoneで設定した話。