You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python优化:将井字棋字符串嵌套列表转换为整数嵌套列表

优化井字棋字符串矩阵转整数矩阵的实现

你当前的实现中,A.index() 每次都是线性查找列表元素,效率偏低,尤其是当映射关系或矩阵规模扩大时。这里提供更高效简洁的优化实现:

最优实现:字典映射 + 嵌套列表推导式

def make_integer_matrix(inputs):
    char_map = {'X': 1, 'O': 0, '#': 99}
    return [[char_map[char] for char in row] for row in inputs]

核心优势:

  • 查找效率跃升:字典的键查找是O(1)时间复杂度,替代了原代码中list.index()的O(n)线性查找,哪怕映射元素增多也能保持高效。
  • 代码简洁通用:用列表推导式替代手动循环append,Python底层对列表推导式的优化比显式循环更快;同时无需硬编码行内元素索引,适配任意长度的行结构。
  • 可读性更强:直接通过字典键值对体现映射关系,逻辑一目了然。

扩展:处理未知字符(可选)

如果输入矩阵可能包含未定义的字符,可以用dict.get()添加默认值,避免抛出KeyError:

def make_integer_matrix(inputs):
    char_map = {'X': 1, 'O': 0, '#': 99}
    return [[char_map.get(char, -1) for char in row] for row in inputs]

这里默认用-1表示未知字符,你可以根据需求调整默认值。

内容的提问来源于stack exchange,提问作者Saffie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 22:50:26