-3

我有一个以下格式的字符串:

00:aa:bb:cc:dd:ee  

我需要拆分它并只输出前 3 个字段,即 00:aa:bb。我在用

s.split(':')[1:3]  

在我的程序中完成这项工作,但它没有帮助。这是正确的方法吗?

4

2 回答 2

5

几乎:Python 是 0 索引的(从 0 开始计数):

>>> s = '00:aa:bb:cc:dd:ee'
>>> s.split(":")
['00', 'aa', 'bb', 'cc', 'dd', 'ee']
>>> s.split(":")[0:3]
['00', 'aa', 'bb']
>>> s.split(":")[:3]
['00', 'aa', 'bb']

你可以重新组合它们:

>>> ':'.join(s.split(":")[:3])
'00:aa:bb'

如果这是问题所在,您可以查看此问题以简要回顾 Python 切片的工作原理。

于 2012-08-30T20:52:18.243 回答
1

你是什​​么意思它没有帮助?是因为结果是一个列表吗?要将其转回字符串,请尝试:

':'.join(s.split(':')[0:3])

还要注意零索引。

于 2012-08-30T20:53:30.350 回答