List 把一张单子切成小块
如何获取列表的最后三个元素,而不包括第一个元素 例如,使用这两个列表List 把一张单子切成小块,list,python-3.x,slice,List,Python 3.x,Slice,如何获取列表的最后三个元素,而不包括第一个元素 例如,使用这两个列表 a=['Matt','1','2'],b=['Luke','1','2','3'] 我希望返回的列表是:['1','2']和['1','2','3']。有没有简单的方法可以做到这一点?您可以简单地使用以下方法: >>> b[-3:] ['1', '2', '3'] 如果列表中的分数少于3分,则您可以: >>> b = ['Luke', '1', '2'] >>> b[1:
a=['Matt','1','2']
,b=['Luke','1','2','3']
我希望返回的列表是:['1','2']
和['1','2','3']
。有没有简单的方法可以做到这一点?您可以简单地使用以下方法:
>>> b[-3:]
['1', '2', '3']
如果列表中的分数少于3分,则您可以:
>>> b = ['Luke', '1', '2']
>>> b[1:]
['1', '2']
因此,要将它们结合起来,您可以使用:
if len(b) > 3:
b[-3:]
else:
b[1:]
您可以简单地使用:
>>> b[-3:]
['1', '2', '3']
如果列表中的分数少于3分,则您可以:
>>> b = ['Luke', '1', '2']
>>> b[1:]
['1', '2']
因此,要将它们结合起来,您可以使用:
if len(b) > 3:
b[-3:]
else:
b[1:]
要从列表中获取最后的n
元素,您需要执行以下操作:
a[-n:]
下面是一个简单的例子:
>>> a = [1, 2, 3, 4]
>>> a[-3:]
[2, 3, 4]
如果列表中包含n
元素,请执行以下操作:
a[-n:]
下面是一个简单的例子:
>>> a = [1, 2, 3, 4]
>>> a[-3:]
[2, 3, 4]
如果您的列表包含
a = a[1:]
b = b[1:]
获取最后三个参数不会在上工作,因为它包含三个参数。它将在一些条件语句之后工作
如果确定需要最后3个参数,请使用以下选项:
a = a[-3:]
b = b[-3:]
为您提供完整的代码片段:
def get_list(my_list):
if len(my_list) > 3:
return my_list[-3:]
else:
return my_list[1:]
在您的情况下,名称始终是列表中的第一个参数,因此只需应用于其中的每一个:
a = a[1:]
b = b[1:]
获取最后三个参数不会在上工作,因为它包含三个参数。它将在一些条件语句之后工作
如果确定需要最后3个参数,请使用以下选项:
a = a[-3:]
b = b[-3:]
为您提供完整的代码片段:
def get_list(my_list):
if len(my_list) > 3:
return my_list[-3:]
else:
return my_list[1:]
除了其他好的答案之外,你还可以考虑使用这个列表来代替这个。你可以这样做:
a = ['Matt', '1', '2']
b = ['Luke', '1', '2', '3']
scoresDict = {}
scoresDict[a[0]] = a[1:]
scoresDict[b[0]] = b[1:]
print(scoresDict)
print(scoresDict['Matt'])
print(scoresDict['Luke'])
输出:
{'Matt': ['1', '2'], 'Luke': ['1', '2', '3']}
['1', '2']
['1', '2', '3']
除了其他好的答案之外,你还可以考虑使用这个列表来代替这个。你可以这样做:
a = ['Matt', '1', '2']
b = ['Luke', '1', '2', '3']
scoresDict = {}
scoresDict[a[0]] = a[1:]
scoresDict[b[0]] = b[1:]
print(scoresDict)
print(scoresDict['Matt'])
print(scoresDict['Luke'])
输出:
{'Matt': ['1', '2'], 'Luke': ['1', '2', '3']}
['1', '2']
['1', '2', '3']
对于
列表中的不同元素
,将所有元素放入列表中,然后将其映射到lambda
函数
In [1]: a = [1,2,3,4]
In [2]: b = ['a', 'b', 'c', 'd', 'e']
In [3]: lis = [a, b]
In [4]: list(map(lambda x: x[-(len(x)-1):], lis))
Out[4]: [[2, 3, 4], ['b', 'c', 'd', 'e']]
对于列表中的不同元素
,将所有元素放入列表中,然后将其映射到lambda
函数
In [1]: a = [1,2,3,4]
In [2]: b = ['a', 'b', 'c', 'd', 'e']
In [3]: lis = [a, b]
In [4]: list(map(lambda x: x[-(len(x)-1):], lis))
Out[4]: [[2, 3, 4], ['b', 'c', 'd', 'e']]
['1','2']
最后三个元素是什么?最后三个元素不包括第一个元素。所有列表的格式都是['name'、'score'、'score'…]
,我需要最后三个'score'元素,不包括'name'。['1'、'2']
最后三个元素如何?最后三个元素不包括第一个元素。所有列表的格式都是['name'、'score'、'score'…]
,我需要最后三个'score'元素,不包括'name'。但这将返回第一个元素之后的所有元素。如果我有一个这样格式的列表:`['n'、'1'、'2'、'3'、'4'、'5'],我需要它返回['3'、'4'、'5'],而不是['1'、'2'、'3'、'4'、'5']。我修复了这个@matt,它返回第一个之后的所有元素。如果我有一个这样格式的列表:`['n'、'1'、'2'、'3'、'4'、'5'],我需要它返回['3'、'4'、'5'],而不是['1'、'2'、'3'、'4'、'5']。我修复了这个@Matt