Minor issues that you can ignore for the time being, but I feel they might be better practices
cond='y'
while(cond=='y'):
if meaning=="'ISO 639-6 entity'":
word, meaning = random.choice(list(data.items()))
meaning=str(meaning).strip('[]')
for l in word:
if l not in validLetters:
word, meaning = random.choice(list(data.items()))
meaning=str(meaning).strip('[]')
else:
cond='n'
if turns == 9:
print("9 turns left")
print(" -------- ")
if turns == 8:
print("8 turns left")
print(" -------- ")
print(" O ")
and so on...
You can easily condense this code in the loop and avoid rewriting statements whenever possible, you can try to reuse it, or relate it with the loop counter, for example, print(turns, "turns left")
so that saves a lot of lines just like that. Think of a logic to condense that code and put it on a loop.