0

すべての実行で新しいランダム ポイントが得られるように、ランダムな 3D 座標を生成する必要があります。毎回同じポイントを避けるためにシードを追加しようとしています。

これまでのところ、私はこれを試しました

from random import *
rnd = random.Random(8)
x,y,z = 7.045,23.569,63.447

x1,y1,z1 = (rnd.uniform(x-3.5,x+3.5),rnd.uniform(y-3.5,y+3.5),rnd.uniform(z-3.5,z+3.5))
newcord = [x1,y1,z1]
print newcord

私は何を間違っていますか?

4

2 に答える 2

2

2 行目を に変更rnd = random.Random(8)rnd = Random()ます。それ以外の場合は、正常に動作するはずです。

于 2013-10-21T06:28:37.043 に答える
0

既存のコードを使用してシードを設定するには:

import random as rnd
rnd.seed(8)
x,y,z = 7.045,23.569,63.447
newcord = [rnd.uniform(x-3.5,x+3.5),rnd.uniform(y-3.5,y+3.5),rnd.uniform(z-3.5,z+3.5)]
print newcord

シードを使用すると、コードを実行するたびに同じ乱数が得られます。このようにして、結果が再現可能になります。

于 2013-10-21T06:45:08.077 に答える