在python中创建哈希表的有效方法

在python中创建哈希表的有效方法,python,python-3.x,Python,Python 3.x,我试图解决的问题: def createHasthTable (givenString): hashTable = {} for characters in givenString: hashTable.update({hash(characters): characters}) return hashTable 我正在尝试为字符串中的所有字符创建哈希表 问题: def createHasthTable (givenString): hashTa

我试图解决的问题:

def createHasthTable (givenString):
    hashTable = {}
    for characters in givenString:
        hashTable.update({hash(characters): characters})
    return hashTable
我正在尝试为字符串中的所有字符创建哈希表

问题:

def createHasthTable (givenString):
    hashTable = {}
    for characters in givenString:
        hashTable.update({hash(characters): characters})
    return hashTable
这是创建hastable最有效的方法,还是有其他内置方法可以创建hashtable

代码:

def createHasthTable (givenString):
    hashTable = {}
    for characters in givenString:
        hashTable.update({hash(characters): characters})
    return hashTable

您可以一次性创建字典:

return {hash(char): char for char in characters}
或:


您可以一次性创建字典:

return {hash(char): char for char in characters}
或:


你的预期产出是多少?你在这里干什么毫无意义。哈希表具有映射到值的键。如果您只是想做
hash(value):value,为什么不使用列表?为什么要将字符的哈希映射到该字符?这根本不处理冲突,这表明您并不真正理解Python dict是如何工作的。您只需要一组字符吗?一般原则:如果您试图使用散列值作为dict键,那么您就错了。您期望的输出是什么?你在这里干什么毫无意义。哈希表具有映射到值的键。如果您只是想做
hash(value):value,为什么不使用列表?为什么要将字符的哈希映射到该字符?这根本不处理冲突,这表明您并不真正理解Python dict是如何工作的。您只需要一组字符吗?一般原则:如果您试图使用哈希值作为dict键,那么您就错了。