python字典返回无

时间:2013-03-04 11:44:13

标签: python list dictionary

我有这样的字典

dict_a = {}
dict_a["key1"] = [["1","2"]]

我希望将此字典中的值[["1","2"]]与字符串3连接起来。所以我做了这样的事情:

new_list = list(dict_a["key1"])
dict_a["key1"] = new_list.append("3")

当我使用键key1打印字典时,它会给我一个None而不是[[“1”,“2”],“3”]

print dict_a["key1"]

有人解释为什么我得到“无”?

2 个答案:

答案 0 :(得分:2)

是的,我可以。

基本上有两种方法:

  1. 创建并返回新对象的那些。

  2. 修改就地操作对象的那些。他们没有返回self(在某些情况下非常方便),而是按惯例返回None

  3. list.append()是后者之一,因此返回None

    所以你应该替换

    dict_a["key1"] = new_list.append("3")
    

    new_list.append("3")
    dict_a["key1"] = new_list
    

答案 1 :(得分:1)

append()方法不返回任何值,因此默认情况下它返回None。如果将结果分配给变量,则为None。这就是为什么如果你打印那个值就得None