我有一个包含以下内容的列表:
['$GPGLL', '5305.9132', 'N', '00019.1938', 'E', '', 'A', 'A*46rn']
例如,我需要检索第二项的前 2 位数字,所以我得到"53"。我需要对相当多的数据块做类似的事情。
我知道如何从列表中获取第二项,也知道如何从字符串中获取特定字符,但是将两者结合起来......
tms = "$GPGLL,5305.9132,N,00019.1938,E,,A,A*46rn"
bits = tms.split(',')
print(bits)
temp = (bits[1])
print(temp[0:2])
代码具有预期的效果,但是使用临时变量在 2 个步骤中实现我想要的效果似乎不优雅。
有没有更好的方法?
如果需要,您可以将两个下标组合在一行中:
print(bits[1][0:2])
虽然正如@ujhuyz0110评论中提到的,
不过,我不认为分两步完成是一个问题。它实际上使代码更易于阅读。如果列表中的第二个元素有一些特殊含义,您可以为其指定一个更有意义的名称。我认为第二个元素可能可以在这里命名
latitude
?