我有一本类似的字典
x ={'1': [['a','b'],['ac','d']], '2' : [['p','qa'],['r','s']]}
我想访问单独的字符串,如a,b等,比较它是否有“a”,删除这些。你知道吗
主要问题是-如何访问字符串?我该怎么改?你知道吗
我尝试使用嵌套循环,但无法更改,因为我猜赋值stmt不能以这种方式工作。你知道吗
你知道如何处理这种情况吗?你知道吗
编辑:我使用的天真方法-
for item in x:
for ele in x[item]:
for i in ele:
i = #assign new value here using regex comparison
但当我试着在这之后打印x时,它保持不变。 很明显。赋值语句不是这样工作的。我该如何访问元素来更改它?你知道吗
在你的例子中
i
是ele
中字符串的副本,因此分配给它对原始字符串没有影响。您需要修改列表ele
。可能是ele[ele.index(i)] = #whatever
。但是,请注意,如果列表中的值相同,这将无法正常工作。它只会改变第一个。你知道吗我不确定你到底想做什么,但使用列表理解可能更容易,至少对于最里面的列表来说是这样。这将允许您更改最里面列表的每个元素。也许吧
其中需要
ele[:]
来更改原始的内部列表(仅仅ele
是行不通的),当我们实际需要值而不是键时,我使用了更为Pythonic的x.values()
。你知道吗相关问题 更多 >
编程相关推荐