我试图创建一个程序,读取一个txt文件,该文件有1000多行以下格式,并将数据存储在两个独立的二维数组中:
b14 b15 b12 y4:y11 r7 y1 b2
r15 y13 y12 b14:g9 r2 b8 b7
该文件存储了一个游戏的结果,其中有两个玩家,他们都从一个包中选择了四个令牌。上面可以看到的一个标记示例是“b15”,这意味着它是蓝色的,上面有数字15。冒号表示之后的代币是给第二个玩家的。你知道吗
每一行都是一个游戏。我需要将每个令牌的颜色和编号存储到4行2列的二维数组中,每个玩家都有一个
player1[0][0] = 'b'
player1[0][1] = 14
player1[1][0] = 'b'
player1[1][1] = 15
这将为玩家1存储前两个令牌,在我为单个游戏(文本文件中的单行)将此玩家和第二个玩家的其余令牌存储在单独的二维数组中之后,我将处理数据,然后再次为文本文件中的下一行(游戏)覆盖数组。你知道吗
我的主要问题是如何做到以下几点:
感谢阅读,我很高兴回答任何问题,以进一步澄清。你知道吗
你可以用正则表达式把字母和数字分开,结构拆分()平分两名选手的成绩
使用以下方法(关键函数是
re.match
和str.split
):输出:
如果从文本文件中读入了移动,可以使用split函数和列表切片(Explain Python's slice notation)来处理它们。你知道吗
>>> mystring = 'b14 b15 b12 y4:y11 r7 y1 b2'
在冒号处分开,让玩家1/付款人2移动:
>>> player1, player2 = mystring.split(':')
对于每个玩家,在空格处拆分以获得移动:
如果您知道移动的第一部分总是正好是一个字母,则可以“切掉”字符串的第一部分:
相关问题 更多 >
编程相关推荐