2016-11-24 30 views
2

範囲内の小数点以下2桁まで乱数を生成するにはどうすればよいですか(0,0.1)。これまでのコードでは[0、0.1]の範囲内の小数点以下2桁の数値が生成されています。特定の範囲内の乱数を生成する

radius = round(random.uniform(0, 0.1), 2) 
+0

ここで何が間違っているのかよく分かりません。そこには何がありますか? –

+2

@AliGajani彼らは除外したい0.00 – Nayuki

+0

radius = round(random.uniform(0.01、0.1)、2) –

答えて

7

おそらく、あなたの問題を解決する最も簡単な方法は、整数ではなく、浮動小数点数の観点で考えることです。

あなたは基本的に0.01、0.02、0.03、...、0.09のような可能性の乱数をしたいです、0.10。

まず、1から10までの整数を生成します。あなたは浮動小数点数を得るために100.0で割ります。ここで

コードです:

x = random.randint(1, 10) 
y = x/100.0 

ドキュメント:random.randint(a, b)

+0

ありがとう多くの助けを借りて – Hello

+1

@Helloようこそ!次回は感謝の必要はありません。単純にupvoteして答えを受け入れます。 – Nayuki

-1

uniformが低い含まれていますが、高除外として、あなたは低除く0からmaxまでの値を取得する最大値からランダムな値を減算してみて高いを含む:

radius = round(0.1-random.uniform(0, 0.1), 2) 
+0

これは同じ分布を作りますが、依然として0.00 – Nayuki

関連する問題