猿问

将更改限制为仅 1 个列表

我有嵌套列表(即。[[list1],[list2]]我只想对第一个列表进行更改。

我的函数如下:


function_name(data, list_number, change)

应该仅返回对数据中提供的 list_number 的更改


所以我的总体问题是,如何将此更改限制为仅给定的 list_number?如果这不清楚,请随时询问和澄清。


例如:

如果“更改”已经知道它将替换哪个索引,在这种情况下它将替换第一个列表的第二个索引(即 2)


data = [[1,2,3],[4,5,6]]  

function_name(data, 1, 6) 

data = [[1,6,3],[4,5,6]] 

我什至不知道从哪里开始,因为索引是“未知”(即,在调用函数时由用户给出)


RISEBY
浏览 137回答 2
2回答

慕码人8056858

试试这个代码:data = [[1,2,3],[4,5,6]]def element_change(data, index_list, element_to_change, change):    a =''.join([ str(i) for i in data[index_list]])    data[index_list][a.find(str(element_to_change))] = change    return dataprint(element_change(data, 0, 2, 6))输入:[[1, 2, 3], [4, 5, 6]]输出:[[1, 6, 3], [4, 5, 6]]它所做的只是将 list 转换为 string并合并它们,以便能够使用find()method 来查找index。

慕慕森

列表项通过它们的索引进行引用,嵌套列表可以以相同的方式工作。如果您的清单是:list = [['nest1_1', 'nest1_2']['nest2_1', 'nest2_2']]您可以通过以下方式更改它:list[0] = ['nesta_1', 'nesta_2'] list[1][0] = 'second_1'这将使您的列表现在是:[['nesta_1', 'nesta_2']['second_1', 'nest2_2']]
随时随地看视频慕课网APP

相关分类

Python
我要回答