这是st[0:6]
,这是我的列表(实际上是迹线)。
我可以通过数字来了解一些信息,例如st[3]
,但是我想按字符串获取一些跟踪信息,例如ADK.10
的数据。
我知道这个名字(ADK
),但是现在我不知道这个索引号。
Stream中的6条跟踪如下:
II.AAK.00.BHZ | 2010-02-18T01:19:08.019500Z
II.AAK.10.BHZ | 2010-02-18T01:19:08.019500Z
IU.ADK.00.BHZ | 2010-02-18T01:18:31.019536Z
IU.ADK.10.BHZ | 2010-02-18T01:18:31.019536Z
IU.AFI.00.BHZ | 2010-02-18T01:23:13.023144Z
IU.AFI.10.BHZ | 2010-02-18T01:23:13.010644Z
我在下面尝试了此代码,但出现错误:
tr = st['*.RSSD.00.*']
我想将RSSD.00
数据发送到tr。我该怎么办?
答案 0 :(得分:0)
我不知道您所说的数据是什么意思,但是您可以使用正则表达式提取它。这里是一个例子:
import re
tr = "II.AAK.00.BHZ | 2010-02-18T01:19:08.019500Z"
MAGIC_REGEX = "\w{2}\.(?P<name>.*)\.(?P<value>\d+)\.\w{3}\s+\|\s+(?P<date>\S+)"
match = re.fullmatch(MAGIC_REGEX, tr)
print(match.groupdict())
结果:
{'name': 'AAK', 'value': '00', 'date': '2010-02-18T01:19:08.019500Z'}
groupdict()为每个组提供字典,但是您也有groups()为您提供一个元组。
('AAK', '00', '2010-02-18T01:19:08.019500Z')