我有以下字符串:
(1, 2, 3, 4)
我想将其转换为最后两个值:
(3, 4)
在我的实际代码中,所有四个字段都是整数,但长度差异很大。我已尝试用正则表达式和'for'语句执行此操作,并在此处尝试各种类似问题的答案,但到目前为止还没有运气。
答案 0 :(得分:5)
这将为您提供元组中的最后两个术语:
>> a = (1,2,3,4)
>> a[-2:]
(3,4)
答案 1 :(得分:2)
听起来你想使用slice operator。
编辑:或许this是更好的链接。向下滚动一下切片符号的东西。这些示例处理字符串,但它应该适用于任何序列类型。
答案 2 :(得分:0)
如果(1,2,3,4)是元组:
data = (1,2,3,4)
newData = data[-2:]
如果你有'(1,2,3,4)'那么:
import ast
data = ast.literal_eval('(1,2,3,5)')
newData = data[-2:]
或者,如果您必须将此列表拆分为某个值:
def get_slice(inputData, searchVal):
if searchVal in inputData and inputData.index(searchVal) < len(inputData):
return inputData[inputData.index(searchVal)+1:]
return ()
get_slice((1,2,3,4),2)