回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我目前在攻读博士学位期间正在学习非常基础的python作为一个辅助项目。为了应用我所学的知识,我想自动化一个基本的数独网格求解器</p>
<p>这个故事从一个列表开始</p>
<pre><code>lines=['53xx7xxxx', '6xx195xxx', 'x98xxxx6x', '8xxx6xxx3', '4xx8x3xx1', '7xxx2xxx6', 'x6xxxx28x', 'xxx419xx5', 'xxxx8xx79']
</code></pre>
<p>我想得到一个看起来像:</p>
<pre><code>line1=['5', '3', 'x', 'x', '7', 'x', 'x', 'x', 'x']
line2=['6', 'x', 'x', '1', '9', '5', 'x', 'x', 'x']
...
</code></pre>
<p>等等</p>
<p>我一直在努力以一种非常有效的方式循环整个过程。
现在,我所做的是通过获取每个元素来创建每个列表,然后用我在教程网站上看到的一个小函数来拆分它们</p>
<p>对于列表中的每个元素,我重复一遍,我只需要复制粘贴并获得从第1行到第9行的列表</p>
<pre><code>def split(word):
return [char for char in word]
line1=lines[0]
line1=split(line1)
line2=lines[1]
line2=split(line2)
...
</code></pre>
<p>它是有效的,但看起来一点效率都没有。对于这个特定的问题,我还没有找到任何初学者友好的答案</p>
<p>你们知道更好的方法来处理循环内的多列表生成吗</p>
<p>谢谢你的关注,
祝你愉快</p>
<p>(附言:我是法国人,对任何与英语有关的错误表示抱歉!)</p>