スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

--年--月--日 スポンサー広告 トラックバック:- コメント:-

プログラマーに聞きたい

1: 名無しさん@おーぷん 2015/04/16(木)22:48:39 ID:GW3
for i in range(2):
  for j in range(2):
    print(i,j)

ってやると、

0 0
0 1
1 0
1 1

のように、すべての組み合わせが表示されると思うんだけど
これを、こうしてfor文を一つ追加すると
for i in range(2):
  for j in range(2):
    for k in range(2):
      print(i,j,k)

0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1

こうなるでしょ

このfor文を追加するっていうのを、自動的にやりたいんだ
例えば
func(i)//nにはfor文がいくつ並ぶかが入る
っていう関数があるとして

func(2)ってやると

0 0
0 1
1 0
1 1

が表示されるような関数ってどうやって作るんだ?
言語はpythonでやっています



元スレッド:
プログラマーに聞きたい
http://hayabusa.open2ch.net/test/read.cgi/news4vip/1429192119/

同一カテゴリの関連記事:
トレーディングカードに100万近く使ったけど
ウルトラマン最新作wwwwwwwwwwwwwwwwwwwwwwwww
予備知識なし、身一つで過去に行ったとして出来る金儲けってある?
こういうズボン履いてる女wwwwwwwwwwwww

2: 名無しさん@おーぷん 2015/04/16(木)22:49:22 ID:GW3
func(i)//iにはfor文がいくつ並ぶかが入る
でした

3: タンボマン◆8DH5z5LvtU 2015/04/16(木)22:50:16 ID:Up3
10000111110101111010001110001011100111000110101100011100101011

4: 名無しさん@おーぷん 2015/04/16(木)22:50:55 ID:Zu1
pythonなら

import itertools

で幸せになれる

5: 名無しさん@おーぷん 2015/04/16(木)22:52:14 ID:GW3
>>4
分かった、調べてみる

6: 名無しさん@おーぷん 2015/04/16(木)22:53:25 ID:GW3
ていうか再帰でfor文を呼び出せばいいのかな

7: 名無しさん@おーぷん 2015/04/16(木)22:54:29 ID:Cog
pythonはよくわからんが再起でうんぬんかんぬんするんじゃね

8: 名無しさん@おーぷん 2015/04/16(木)22:58:30 ID:zWR
なぜPythonを覚えようと思ったのか

9: 名無しさん@おーぷん 2015/04/16(木)23:00:50 ID:8Y8
二進数で出力しては?

10: 名無しさん@おーぷん 2015/04/16(木)23:00:59 ID:VLE
知らないけどラムダ式使うんでしょ

11: 名無しさん@おーぷん 2015/04/16(木)23:03:18 ID:Zu1
できたからおいとく
引数の回数だけループが深くなる

[i.py]

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import itertools
import sys

if __name__ == '__main__':
  n = int(sys.argv[1])
  l = [0,1]
  for e in itertools.product(l, repeat=n):
    print(e)

実行結果
$ python i.py 3
(0, 0, 0)
(0, 0, 1)
(0, 1, 0)
(0, 1, 1)
(1, 0, 0)
(1, 0, 1)
(1, 1, 0)
(1, 1, 1)

14: 名無しさん@おーぷん 2015/04/16(木)23:15:32 ID:GW3
>>11
ごめん、再帰で実装しようとしてなんか自分でも良く分からないコードを書いているところだった
itertoolsで簡単にかけるんだね

12: 名無しさん@おーぷん 2015/04/16(木)23:08:27 ID:ffq
8桁なら、 0から255までを二進数で表示すればそうなるね

13: 名無しさん@おーぷん 2015/04/16(木)23:10:24 ID:ffq
100桁や1000桁になるとどうなるのかな

15: 名無しさん@おーぷん 2015/04/16(木)23:22:44 ID:GW3
糞スレすいません!
あんまりにも詰まったので

itertools後で勉強します
ありがとうございました!

もし再帰で実装できる人が居たら教えて欲しいです

16: 名無しさん@おーぷん 2015/04/16(木)23:23:06 ID:GW3
じゃなくて糞スレだから落としてください
それじゃあ

17: 名無しさん@おーぷん 2015/04/16(木)23:31:51 ID:Zu1
再帰使って自分で作るのも勉強としては面白いけど
実用ではitertools使ったほうが読みやすいからオヌヌメ

itertoolsはほかにも順列、組み合わせなんかもあるので
総当りでなんかやらせるときには超便利
1000桁でも余裕で回せるよ




スポンサーサイト

2015年04月16日 雑談 トラックバック:0 コメント:0

<< 木下優樹菜とスザンヌのコピペ見てからスザンヌの事好きになった奴www | サボリーマンのまとめTOP | 何この漫画クソワロタ >>












管理者にだけ公開する

| このページの上へ |

マトメトリックス様記事

RSS記事(アンテナサイト)

RSS記事(まとめブログ・ニュースサイト等)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。