python三维随机游走轨迹模拟_在Python中模拟随机游走

我正在使用Python 3.我的代码尝试在3维中模拟random walk的N个步骤。在每个步骤中,选择一个随机方向(北,南,东,西,上,下),每个方向有1/6的概率,并在该方向上采用大小为1的步骤。然后打印新的位置。起始位置是原点(0,0)。在Python中模拟随机游走

即使没有错误消息,代码也不起作用。我们应该移动只有一步x,y或z。然而,在结果中,我发现有时候我根本不动,有时候我会向一个以上的方向移动。

这里是我的代码:

import random

N = 30

n = random.random()

x = 0

y = 0

z = 0

count = 0

while count <= N:

if n < 1/6:

x = x + 1

n = random.random()

if n >= 1/6 and n < 2/6:

y = y + 1

n = random.random()

if n >= 2/6 and n < 3/6:

z = z + 1

n = random.random()

if n >= 3/6 and n < 4/6:

x = x - 1

n = random.random()

if n >= 4/6 and n < 5/6:

y = y - 1

n = random.random()

if n >= 5/6:

z = z - 1

n = random.random()

print("(%d,%d,%d)" % (x,y,z))

count = count + 1

print("squared distance = %d" % (x*x + y*y + z*z))

你怎么认为我可以解决这一问题?

非常感谢。

2017-09-24

NOK

+0

你使用Python 2或3吗? –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值