回答編集履歴
2
追記
test
CHANGED
@@ -90,13 +90,25 @@
|
|
90
90
|
|
91
91
|
|
92
92
|
|
93
|
+
divmodを用いれば二つのidxを一気に決めることも可能ですが、分かり易いかと言うと微妙です。
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
**参考**:
|
98
|
+
|
99
|
+
- [組み込み関数 — Python 3.7.3 ドキュメント](https://docs.python.org/ja/3/library/functions.html)
|
100
|
+
|
101
|
+
- [random --- 擬似乱数を生成する — Python 3.7.3 ドキュメント](https://docs.python.org/ja/3/library/random.html)
|
102
|
+
|
103
|
+
|
104
|
+
|
93
105
|
その他、気になるところ
|
94
106
|
|
95
107
|
---
|
96
108
|
|
97
109
|
**zerooneの実装**
|
98
110
|
|
99
|
-
一様分布なんて用いずとも、random.choicesに重みを与えれば良いです。
|
111
|
+
一様分布なんて用いずとも、[random.choices](https://docs.python.org/ja/3/library/random.html#random.choices)に重みを与えれば良いです。
|
100
112
|
|
101
113
|
```Python
|
102
114
|
|
@@ -125,3 +137,9 @@
|
|
125
137
|
**無限ループ**
|
126
138
|
|
127
139
|
while True
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
---
|
144
|
+
|
145
|
+
あと、この手の処理はNumPyを利用した方が楽なように思います。
|
1
追記
test
CHANGED
@@ -87,3 +87,41 @@
|
|
87
87
|
[[1, 2, 3], [4, 5, 100], [7, 8, 9]]
|
88
88
|
|
89
89
|
```
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
その他、気になるところ
|
94
|
+
|
95
|
+
---
|
96
|
+
|
97
|
+
**zerooneの実装**
|
98
|
+
|
99
|
+
一様分布なんて用いずとも、random.choicesに重みを与えれば良いです。
|
100
|
+
|
101
|
+
```Python
|
102
|
+
|
103
|
+
>>> random.choices([0, 1], weights=[.2, .8], k=10)
|
104
|
+
|
105
|
+
[0, 1, 1, 0, 1, 1, 1, 1, 1, 1]
|
106
|
+
|
107
|
+
>>> random.choices([0, 1], weights=[.2, .8], k=10)
|
108
|
+
|
109
|
+
[1, 1, 1, 1, 1, 1, 0, 1, 1, 1]
|
110
|
+
|
111
|
+
>>> random.choices([0, 1], weights=[.2, .8], k=10)
|
112
|
+
|
113
|
+
[1, 1, 0, 0, 1, 1, 0, 0, 0, 1]
|
114
|
+
|
115
|
+
```
|
116
|
+
|
117
|
+
|
118
|
+
|
119
|
+
一行丸々一気に作れますし、
|
120
|
+
|
121
|
+
あるいは全要素を生成してその後二次元リストに成形しても良いです。
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
**無限ループ**
|
126
|
+
|
127
|
+
while True
|