-1

如何用python(也许用re模块)解析这个字符串并用这个数据创建数组?

map: mp_rust
num score ping guid                             name            lastmsg address               qport rate
--- ----- ---- -------------------------------- --------------- ------- --------------------- ----- -----
4

2 回答 2

3

使用固定宽度格式,字符串切片可能是解析的最佳方式:

num = s[0:3]
score = s[4:9]
ping = s[10:14]
guid = s[15:47]
name = s[48:63]
 ...

确保去除多余的空格并在必要时转换为int 。

您可以通过将结果存储在列表中来创建结果的“数组” :

arr = [num, score, ping, guid, name, lastmsg, address, qport, rate]
于 2013-04-03T11:33:43.850 回答
0

除非您知道数据的确切长度(名称可能是“jack”或“theodore”,只是说),否则在空格处拆分可能是一种更聪明的方法。它是字符串切片,但静态较少。

>>> s = 'num score ping guid                 name            lastmsg address'
>>> num, score, ping, guid, name, lastmsg, address = s.split()

如果这些值可能包含空格,那么您必须使用正则表达式。

于 2013-04-03T13:55:01.373 回答