数値の2進表現の桁を逆にする滑らかな関数を探しています。
もしf
そのような機能があったら、私は持っていただろう
int(reversed(s),2) == f(int(s,2))
sが1で始まる0と1の文字列である場合は常に。
今使っていますlambda x: int(''.join(reversed(bin(x)[2:])),2)
簡潔さに関してはこれで問題ありませんが、これを行うにはかなり回りくどい方法のようです。
ビット単位の演算子を使用したより良い(おそらくより速い)方法があるかどうか疑問に思いました。