我有一个这样的数组。在Python中的特定索引处附加数组
[['Bob\n', 0], ['Joe\n', 0], ['Bill', 0], ['Steve', 0], ['Judy', 0]]
我想将其中一个零改成1.如何在Joe之后将.append指向0。我是python新手,不幸的是现在不能使用numPy。另外你如何摆脱那些愚蠢的\ n在几个名单的结尾?
我有一个这样的数组。在Python中的特定索引处附加数组
[['Bob\n', 0], ['Joe\n', 0], ['Bill', 0], ['Steve', 0], ['Judy', 0]]
我想将其中一个零改成1.如何在Joe之后将.append指向0。我是python新手,不幸的是现在不能使用numPy。另外你如何摆脱那些愚蠢的\ n在几个名单的结尾?
您可以使用list
指标:
>>> mylist = [['Bob\n', 0], ['Joe\n', 0], ['Bill', 0], ['Steve', 0], ['Judy', 0]]
>>> mylist[1][1] = 'new_value'
>>> mylist
[['Bob\n', 0], ['Joe\n', 'new_value'], ['Bill', 0], ['Steve', 0], ['Judy', 0]]
在
mylist
,在第二个元素(1),在子列表的第二个元素,我设置'new_value'
而对于\n
,你可以使用str.strip
:
>>> mylist = [['Bob\n', 0], ['Joe\n', 0], ['Bill', 0], ['Steve', 0], ['Judy', 0]]
>>> mylist = [[i.strip(), j] for i, j in mylist]
>>> mylist
[['Bob', 0], ['Joe', 0], ['Bill', 0], ['Steve', 0], ['Judy', 0]]
使用list-comprehension并将
strip
应用于 所有子列表的第一个元素。
将零更改为1,而不是附加新的零。 OP不太清楚寿。 –
它不会让我发表意见,但我想添加到祖鲁语的回答:
>>>mylist = [['Bob\n', 0], ['Joe\n', 0], ['Bill', 0], ['Steve', 0], ['Judy', 0]]
#so far so good, but change mylist[1][0] to mylist[1][1]
>>>mylist[1][1] = 1
>>>mylist
[['Bob\n', 0], ['Joe\n', 1], ['Bill', 0], ['Steve', 0], ['Judy', 0]]
您可以使用[INT]访问列表的元素 所以,MYLIST [1]是元素mylist的。 mylist [1]也恰好是一个列表。让说这个(假设我没有改变的价值还):
>>>inside_list = mylist[1]
>>>inside_list
['Joe\n', 0]
现在我可以访问此名单内。 0是我想要更换号码,在索引1处,所以我们可以这样做:
>>>inside_list[1] = 1
>>>inside_list
['Joe\n', 1]
一个侧面说明,因为0是一个整数,你也可以这样做:
>>>inside_list[1]+=1
>>>inside_list
['Joe\n', 1]
我看到zulu更新了他的列表索引= P – appills
>>>input = [['Bob\n', 0], ['Joe\n', 0], ['Bill', 0], ['Steve', 0], ['Judy', 0]]
>>>output = map(lambda x: [x[0].rstrip(), x[1] or 1], input)
>>>output
>>>[['Bob', 1], ['Joe', 1], ['Bill', 1], ['Steve', 1], ['Judy', 1]]
'change'和'append'具有不同的含义。您想要更改值还是附加新值? –