使用python处理和订购txt文件

问题描述 投票:-2回答:1

我正在使用Python和txt文件。

我有一个txt文件,如下:

w2w9w8b7w4w6b4w7b6w7b4w9w2w8b3w4w3w5w4w7b5w3b6w5b6w6b5b6w1w3b7w6w9w7w2w4w1w3b3w7w2w8w6w5b1w9w8w6b2w3b8w5b5w2w8b4w7w9b3w3w2w1w6w6w2b4w1w7w4b4w9w3b8w4w1b3w5b1w9w8b1

我需要的是将文件首先按9x9的行和列进行排序,如下所示:

w2 w9 w8 b7 w4 w6 b4 w7 b6 
w7 b4 w9 w2 w8 b3 w4 w3 w5 
w4 w7 b5 w3 b6 w5 b6 w6 b5 
b6 w1 w3 b7 w6 w9 w7 w2 w4 
w1 w3 b3 w7 w2 w8 w6 w5 b1 
w9 w8 w6 b2 w3 b8 w5 b5 w2 
w8 b4 w7 w9 b3 w3 w2 w1 w6 
w6 w2 b4 w1 w7 w4 b4 w9 w3 
b8 w4 w1 b3 w5 b1 w9 w8 b1 

除了以这种方式排序之外,我还需要保留该数字,如果它在“ w”旁边,并且该数字在“ b”旁边,则将其删除。最终输出如下所示:

2 9 8   4 6   7     
7   9 2 8   4 3 5 
4 7   3   5   6  
1 3   7 2 8 6 5  
9 8 6   3   5   2 
8   7 9   3 2 1 6 
6 2   1 7 4   9 3 
  4 1   5   9 8 

非常简单地阅读txt文件,他们在几个教程中都指出了这一点,我已经做到了。但是其余的我都很难。

我是python的新手,我不太了解如何使用txt文件。

您能帮助我还是给我一些有关如何实施的建议?谢谢!

python python-3.x
1个回答
0
投票

感谢您的问题,欢迎您使用Stack Overflow。

有很多方法可以给猫皮,所以我会尽力为您解释一种可行的方法。我不会为您编写代码,但会为您提供可以使用的算法。我鼓励您以后再尝试解决此类问题,因为您并不是真正需要在StackOverflow上询问的问题。这听起来像是一项家庭作业。尽管如此:

  1. 作为字符串读入文件。
  2. 反复遍历字符串,一次两个字母,并有条件地将它们作为元素添加到数组中。这意味着在将它们插入数组之前,如果检测到要添加的元素以b开头,则插入该元素结尾的数字,否则插入一个空格' '。继续直到您到达字符串的末尾。
  3. 迭代刚创建的数组,然后在新array中将每个9个元素添加到新数组中。您现在有了一个二维数组,看起来像:
[
  ['2', '9', '8' ... ' '],
  ['7', ... '5'],
  ...
]
  1. 以您所需的格式将其打印出来,这很简单。您可以简单地遍历2D数组,并将元素与空白连接起来,然后将它们循环打印出来。

我已经描述了一种解决该问题的相当简单且野蛮的方法-我相信您可以找到许多改善其性能的方法。

祝你好运!

© www.soinside.com 2019 - 2024. All rights reserved.