Resultado estranho da caminhada aleatória em python 3?

Acabei de começar a aprender python e tenho um problema para imprimir um novo local de passeio aleatório em 3 dimensões. Não há erro aparecendo, mas é óbvio que a saída (x, y, z) impressa não é razoável! Ao simular uma caminhada aleatória passo a passo, presumo que apenas um valor em (x, y, z) deva ser alterado a cada vez. Mas parece que não está na saída. Estou tentando depurá-lo, mas ainda confuso sobre identificar qual é o verdadeiro problema.

As linhas principais da saída:

(0,-1,1)
(-1,0,1)
(-2,0,1)
(-2,1,2)
(-2,2,2)
(-2,2,3)
(-1,2,3)
(0,1,3)

Minha motivação:

O objetivo deste código é simular N etapas de uma caminhada aleatória em 3 dimensões. Em cada etapa, uma direção aleatória é escolhida (norte, sul, leste, oeste, cima, baixo) e uma etapa do tamanho 1 é executada nessa direção. O novo local é impresso. O local inicial é a origem (0, 0, 0).

Meu código:

import pdb
import random  # this helps us generate random numbers
N = 30  # number of steps
n = random.random()  # generate a random number

x = 0
y = 0
z = 0
count = 0 
while count <= N:
  if n < 1/6:
      x = x + 1           # move east
      n = random.random() # generate a new random number
  if n >= 1/6 and n < 2/6:
      y = y + 1           # move north
      n = random.random() # generate a new random number
  if n >= 2/6 and n < 3/6:
      z = z + 1           # move up
      n = random.random() # generate a new random number
  if n >= 3/6 and n < 4/6:
      x = x - 1           # move west
      n = random.random() # generate a new random number
  if n >= 4/6 and n < 5/6:
      y = y - 1           # move south
      n = random.random() # generate a new random number
  if n >= 5/6:
      z = z - 1           # move down
      n = random.random() # generate a new random number

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

Meio Ambiente:

Python 3.5 no notebook Jupyter, Windows 10, Dell XPS 13

questionAnswers(1)

yourAnswerToTheQuestion