- 集合set 支持嵌套元組tuple
# 集合set 嵌套元組tuple
def return_set_dataTuple():
# 返回集合set
return {('dd', 123), ('ee', 234), ('gg', 345)}
# python 函數入口
if __name__ == '__main__':
print(return_set_dataTuple())
print(type(return_set_dataTuple()))
# 輸出結果:
{('gg', 345), ('ee', 234), ('dd', 123)}
<class 'set'>
- 集合set 不支持嵌套集合
# 集合set 不支持嵌套集合set
def return_set_dataSet():
# 返回集合set
return {{'dd', 123}, {'ee', 234}, {'gg', 345}}
# python 函數入口
if __name__ == '__main__':
print(return_set_dataSet())
# 結果輸出:
Traceback (most recent call last):
File "XX\test_func2.py", line 9, in <module>
print(return_set_dataSet())
File "XX\test_func2.py", line 4, in return_set_dataSet
return {{'dd', 123}, {'ee', 234}, {'gg', 345}}
TypeError: unhashable type: 'set'
- 集合set 不支持嵌套列表list
# 集合set 不支持嵌套列表list
def return_set_dataList():
# 返回集合set
return {['dd', 123], ['ee', 234], ['gg', 345]}
# python 函數入口
if __name__ == '__main__':
print(return_set_dataList())
# 結果輸出:
Traceback (most recent call last):
File "XX\test_func2.py", line 9, in <module>
print(return_set_dataList())
File "XX\test_func2.py", line 4, in return_set_dataList
return {['dd', 123], ['ee', 234], ['gg', 345]}
TypeError: unhashable type: 'list'
- 集合set 不支持嵌套字典dict
# 集合set 不支持嵌套字典dict
def return_set_dataDict():
# 返回集合set
return {{'name': 'dd', 'password': 123}, {'name': 'ee', 'password': 234}, {'name': 'gg', 'password': 345}}
# python 函數入口
if __name__ == '__main__':
print(return_set_dataDict())
# 結果輸出:
Traceback (most recent call last):
File "XX\test_func2.py", line 9, in <module>
print(return_set_dataDict())
File "XX\test_func2.py", line 4, in return_set_dataDict
return {{'name': 'dd', 'password': 123}, {'name': 'ee', 'password': 234}, {'name': 'gg', 'password': 345}}
TypeError: unhashable type: 'dict'
因爲集合的元素類型只能是不可變數據類型,如整數,浮點數,字符串,元組等(列表,字典,集合類型本身都是可變數據類型,不能做集合的元素出現)