8/25追記 最終版?? http://qiita.com/ttatsf/items/d4543ccc80e0fbe3891d#comment-3eccf9c112d73c505bc2 8/23追記 下記のプログラムだと全てのshuffleパターンが網羅されていない,という指摘がありました. [0,1,2,3] → [1,0,3,2] のような奇遇交換の例. 利用にあたってはご注意ください. 8/21追記 最終的に2行になった模様(白目) def shuffle_all_move(items): rand_ord = random.sample(range(len(items)), k=len(items)) return [items[r] for i, r in sorted(zip(rand_ord, rand_ord[1:]+rand_ord[:1]))] 実行速度も僅かに上のコー
![全要素が移動する(同じ位置に残らない)shuffle - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/a80d2d6d8cde2ec10385bbbed1fc3460febd6f7d/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUU1JTg1JUE4JUU4JUE2JTgxJUU3JUI0JUEwJUUzJTgxJThDJUU3JUE3JUJCJUU1JThCJTk1JUUzJTgxJTk5JUUzJTgyJThCJUVGJUJDJTg4JUU1JTkwJThDJUUzJTgxJTk4JUU0JUJEJThEJUU3JUJEJUFFJUUzJTgxJUFCJUU2JUFFJThCJUUzJTgyJTg5JUUzJTgxJUFBJUUzJTgxJTg0JUVGJUJDJTg5c2h1ZmZsZSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9MTMzYTU1ZjJiYTAxOTEyYmUyZGJhYWFhNzk5OTI4OTU%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwYV9oYXNpbW90byZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9MjdhN2U3NWUzZDFkZWM1YTAyY2VhNDYxN2Y4ZWJiYzk%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D1535ae43e5df934701138b399e9d9d60)