什么时候以及为什么发生TypeError:unhashable type:'list'?

时间:2019-12-14 16:56:09

标签: python list dictionary typeerror

我的源代码如下,它是Python脚本语言:

<template>
    <v-btn color="primary" @click="showDialog=true"></v-btn>
    <keep-alive>
        <my-dialog
            :dialog.sync="showEdit"
            @closeDialog="closeDialog"
        >
        </my-dialog>
    </keep-alive>
</template>
<script>
    data(){
        return {
            showEdit:false,
        },
    },
    methods: {
        closeDialog(){
            this.showEdit = false;
        },
    }

我的输出消息如下:

d = [frozenset({[[1]*2, (2, 3)*3]*4}), {5, }, {6: '', 9: " "}]
print(d, sep = '\t')
for k in d:
    print(k, type(k), sep = '\t')

1 个答案:

答案 0 :(得分:1)

之所以发生这种情况,是因为字典中的列表是无法散列的列表。可以通过将内部嵌套列表转换成这样的元组来解决,

d = [frozenset({((1)*2, (2, 3)*3)*4}), {5, }, {6: '', 9: " "}]