pythonでswapする?
少し前の事になりますが、CTFの勉強がてらpythonでプログラムを書きをはじめて数日のこと、
値の交換をする必要があったのですが、たかだか数行のコードを書くのも煩わしく感じ
python便利そうだし組み込み関数とかあるんじゃないのと思って調べてみたところ有用なことを教わったのでメモを。
もちろんいろいろな言語の入門書にもあるような
tmp = a a = b b = tmp
とか、
a = a+b b = a-b a = a-b
と、書いてもいいのですがもっと楽にできる方法がありました。python素敵。
pythonでは1行で複数の代入が行えるので、
a, b = b, a
と、書けば上述の値の交換と同じことが1行で済むようになります。
このことは、pythonのリファレンスにも書いてあったのでリンクを貼っておきます。