странное в то время как заявление поведение?

Я не могу понять, почему следующие утверждения не работают.

randomKey = random.choice(list(topic.keys()))
randomValue = random.choice(topic[randomKey])

current = "-" * len(randomValue) 
while current != randomValue: 
   (statements)
else:
   (statements)

Однако, если я изменю 1-ю строку на

while current == randomValue:

заявление после 'еще» выполняется правильно. В противном случае, заявление послееще» не выполняется. Любая идея, почему то, что может быть причиной странного поведения? Полный код был исключен, поскольку он будет проходить через всю эту страницу.