mirror of
https://codeberg.org/cblanken/boggler.git
synced 2026-07-25 19:19:20 -04:00
Replace log format strings with lazy formatting
- Pylint recommends to use lazy formatting (%s) for logging functions
This commit is contained in:
+10
-10
@@ -262,7 +262,7 @@ class WordTree:
|
|||||||
def insert_node(self, letters: str, parent: WordNode, is_word: bool = False,
|
def insert_node(self, letters: str, parent: WordNode, is_word: bool = False,
|
||||||
children: dict[str, WordNode] = None, board_pos = None):
|
children: dict[str, WordNode] = None, board_pos = None):
|
||||||
'''Create WordNode for `letters` and into WordTree under `parent`'''
|
'''Create WordNode for `letters` and into WordTree under `parent`'''
|
||||||
log.debug("inserting node: ", letters)
|
log.debug("inserting node: %s", letters)
|
||||||
node = WordNode(letters, is_word, parent, children, board_pos)
|
node = WordNode(letters, is_word, parent, children, board_pos)
|
||||||
parent.add_child_node(node)
|
parent.add_child_node(node)
|
||||||
|
|
||||||
@@ -281,17 +281,17 @@ class WordTree:
|
|||||||
i_max = min(self.max_word_len, len(word))
|
i_max = min(self.max_word_len, len(word))
|
||||||
while i < i_max:
|
while i < i_max:
|
||||||
letters = word[i]
|
letters = word[i]
|
||||||
log.debug("1 letter seq: ", word, letters, letters in curr_node.children)
|
log.debug("1 letter seq: %s %s %s", word, letters, letters in curr_node.children)
|
||||||
if letters not in self.alphabet:
|
if letters not in self.alphabet:
|
||||||
# Check two letter sequences like ("Qu", "Th", etc.) at current index
|
# Check two letter sequences like ("Qu", "Th", etc.) at current index
|
||||||
letters = word[i:i+2]
|
letters = word[i:i+2]
|
||||||
log.debug("2 letter seq: ", word, letters, letters in curr_node.children)
|
log.debug("2 letter seq: %s %s %s", word, letters, letters in curr_node.children)
|
||||||
if letters not in self.alphabet:
|
if letters not in self.alphabet:
|
||||||
return False
|
return False
|
||||||
# Insert node
|
# Insert node
|
||||||
if letters not in curr_node.children:
|
if letters not in curr_node.children:
|
||||||
self.insert_node(letters, curr_node)
|
self.insert_node(letters, curr_node)
|
||||||
log.debug("3 letter seq: ", word, letters)
|
log.debug("3 letter seq: %s %s", word, letters)
|
||||||
|
|
||||||
curr_node = curr_node.children[letters]
|
curr_node = curr_node.children[letters]
|
||||||
|
|
||||||
@@ -306,7 +306,7 @@ class WordTree:
|
|||||||
if len(word) == 0 or word is None:
|
if len(word) == 0 or word is None:
|
||||||
return curr_node
|
return curr_node
|
||||||
|
|
||||||
log.debug("Searching...", word, curr_node)
|
log.debug("Searching... %s %s", word, curr_node)
|
||||||
if curr_node is None:
|
if curr_node is None:
|
||||||
curr_node = self.root
|
curr_node = self.root
|
||||||
for letters in curr_node.children:
|
for letters in curr_node.children:
|
||||||
@@ -337,14 +337,14 @@ class WordTree:
|
|||||||
if self.active_node.is_word and len(self.active_node.children) == 0:
|
if self.active_node.is_word and len(self.active_node.children) == 0:
|
||||||
word_path = subtree.active_node.path[::-1]
|
word_path = subtree.active_node.path[::-1]
|
||||||
subtree.word_paths.append((subtree.active_node.get_word(board), word_path))
|
subtree.word_paths.append((subtree.active_node.get_word(board), word_path))
|
||||||
log.debug("1: WORD FOUND:", "".join([board.board[x].letters for x in word_path]), word_path)
|
log.debug("1: WORD FOUND: %s %s", "".join([board.board[x].letters for x in word_path]), word_path)
|
||||||
self.active_node = self.active_node.parent
|
self.active_node = self.active_node.parent
|
||||||
subtree.active_node = subtree.active_node.parent
|
subtree.active_node = subtree.active_node.parent
|
||||||
return
|
return
|
||||||
elif self.active_node.is_word:
|
elif self.active_node.is_word:
|
||||||
word_path = subtree.active_node.path[::-1]
|
word_path = subtree.active_node.path[::-1]
|
||||||
subtree.word_paths.append((subtree.active_node.get_word(board), word_path))
|
subtree.word_paths.append((subtree.active_node.get_word(board), word_path))
|
||||||
log.debug("2: WORD FOUND:", "".join([board.board[x].letters for x in word_path]), word_path)
|
log.debug("2: WORD FOUND: %s %s", "".join([board.board[x].letters for x in word_path]), word_path)
|
||||||
|
|
||||||
# Branch for each adjacent board cell
|
# Branch for each adjacent board cell
|
||||||
for cell in board_cell.adjacent_cells:
|
for cell in board_cell.adjacent_cells:
|
||||||
@@ -388,16 +388,16 @@ def build_full_boggle_tree(board: BoggleBoard, wordlist_path: str) -> dict[str,
|
|||||||
try:
|
try:
|
||||||
wordlist = read_wordlist(path.join(path.abspath(wordlist_path), filename))
|
wordlist = read_wordlist(path.join(path.abspath(wordlist_path), filename))
|
||||||
index[letters] = wordlist
|
index[letters] = wordlist
|
||||||
log.info(f">> {letters}: {filename}")
|
log.info(">> %s: %s", letters, filename)
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
log.info(f">> {letters}: -- Skipping -- no wordlist found for {letters}")
|
log.info(">> %s: -- Skipping -- no wordlist found for %s", letters, letters)
|
||||||
index[letters] = {}
|
index[letters] = {}
|
||||||
|
|
||||||
log.info("Generating WordTrees...")
|
log.info("Generating WordTrees...")
|
||||||
params = [ [alphabet, board, cell, index[cell.letters] ] for cell in board.board.values()]
|
params = [ [alphabet, board, cell, index[cell.letters] ] for cell in board.board.values()]
|
||||||
with Pool(processes=len(board.board)) as pool:
|
with Pool(processes=len(board.board)) as pool:
|
||||||
for i, res in enumerate(pool.map(build_boggle_tree, params)):
|
for i, res in enumerate(pool.map(build_boggle_tree, params)):
|
||||||
log.info(f">> {params[i][2]}")
|
log.info(">> %s", params[i][2])
|
||||||
board_tree[params[i][2].pos] = res
|
board_tree[params[i][2].pos] = res
|
||||||
|
|
||||||
return board_tree
|
return board_tree
|
||||||
|
|||||||
Reference in New Issue
Block a user