Python で単語検索ジェネレーターを作成していますが、グリッドに表示される単語に問題があります。グリッドが作成されると、座標は文字の 1 つには存在しますが、単語全体には存在しません。どの部分が間違っているのかわかりません。どんな助けでも大歓迎です
import string
import random
width = 10
height = 10
def place_words(words, grid):
words = random.choice([words, words[::-1]])
direction = random.choice([[1,0], [0,1], [1,1]])
xstart = width if direction[0] == 0 else width - len(words)
ystart = height if direction[1] == 0 else height - len(words)
x = random.randrange(0, xstart)
y = random.randrange(0, ystart)
print([x, y])
for i in range(0, len(words)):
grid[y + direction[1]*i][x + direction[0]*i] = words[i]
return grid
grid = [[random.choice(string.ascii_uppercase) for i in range(0, width)]
for j in range(0, height)]
for words in ["HELLO"]:
place_words(words, grid)
print("\n".join(map(lambda row: " ".join(row), grid)))
これはその結果であり、ご覧のとおり、そこには単語がありません!
[3, 0]
R J E O K S Y U Q F
T E P U N B Y Z I O
J A Y N F D S V T Y
H G A M R W O T I M
O W J Q R G Q E D Q
W D J R T N N N Q N
K Z B X H V U Y J X
J F P D W F I C W U
C Z V B Q C Z R K X
E J A K R N J V S Y