Python 删除wierd类型的列表中的项

Python 删除wierd类型的列表中的项,python,arrays,arraylist,Python,Arrays,Arraylist,我在删除列表中的所有内容时遇到了问题,基本上是清除了列表中的所有内容,例如这种类型的内容 {'p': [4, 1], 'o': [3, 5]} 我试着做这个del{:}但是不起作用。 我还想删除这类delhouse[:] TypeError:“str”对象不支持项目删除,但它会出现该错误 谢谢你的帮助 编辑: 这是列表的代码 while Flag: try: h = str(input("Eneter House names [Type XXX to stop]: ")

我在删除列表中的所有内容时遇到了问题,基本上是清除了列表中的所有内容,例如这种类型的内容

{'p': [4, 1], 'o': [3, 5]}
我试着做这个
del{:}
但是不起作用。 我还想删除这类
delhouse[:]
TypeError:“str”对象不支持项目删除
,但它会出现该错误

谢谢你的帮助

编辑:

这是列表的代码

while Flag:
    try:
        h = str(input("Eneter House names [Type XXX to stop]: "))
        if h == 'XXX' or h == 'xxx':
            Flag = False
        else:
            house.append(h)
    except ValueError:
        print("Please enter a word, Thanks")
print()

我也希望能够清除列表中的所有内容。谢谢

您拥有的是一本字典,其中键是字符串,值是列表。如果你不在乎保留键,你可以用一个空的覆盖你的字典

myDictionary = {}

如果您需要修改同一个dictionary对象,以便每个引用该对象的人都能获得一个清晰的dictionary,那么您可以使用它的方法。

我不确定是否理解您的问题,它似乎有点不清楚

如果要清除词典,可以执行以下操作:

>>> house = {'p': [4, 1], 'o': [3, 5]}
>>> house.clear()
>>> house
{}
>>>
>>> house = [1, 2, 3]
>>> house[:] = []
>>> house
[]
>>>
如果要清除列表,可以执行以下操作:

>>> house = {'p': [4, 1], 'o': [3, 5]}
>>> house.clear()
>>> house
{}
>>>
>>> house = [1, 2, 3]
>>> house[:] = []
>>> house
[]
>>>
或者,这是:

>>> house = [1, 2, 3]
>>> del house[:]
>>> house
[]
>>>

不确定我是否理解这个问题,您希望将空列表作为字典的值吗?你到底想删除什么?你应该发布预期输出的样子。我想删除这个{'p':[4,1],'o':[3,5]}在这个字典列表中你想删除整个字典而不仅仅是键和值?抱歉,只是字典中的键和值。然后你可以使用
.clear()
如@rikkibibson所建议的方法。在这种情况下我该怎么做?我很高兴能帮上忙!关于clear list的一个问题,ut提出了一个错误TypeError:“str”对象不支持项分配在我的回答中,我介绍了删除列表和字典的一般方法。这些方法是有效的,因此错误可能是由代码中的其他内容引起的。从我在你的帖子中看到的,我不知道是什么导致了这个错误。