外键字段的名称是否可以与其在其他表中引用的字段的名称不同?如果是,它如何引用另一个表?
字典和集合都在Python中实现为哈希表,插入时间和查找时间均为O(1)。我正在编写一个程序来计算字符串是否由所有唯一字符组成,并且我正在使用一个程序来跟踪到目前为止看到的所有字符。我观察到的是,如果我使用字典而不是集合,则程序的总体运行时间会更快一些。谁能解释这个原因?
使用字典的代码:
def TestUniqueCharacters(characters):
chars = {}
for character in characters:
if character not in chars:
chars[character] = 1
else:
return False
return True
for i in range(30000000):
TestUniqueCharacters("qwertyuiopasdfghjklzxcvbnm1234567890-=[];',.!@#$%^&*()")
Run Code Online (Sandbox Code Playgroud)
使用一组代码
def TestUniqueCharacters(characters):
chars = set()
for character in characters:
if character not in chars:
chars.add(character)
else:
return False
return True
for i in range(30000000):
TestUniqueCharacters("qwertyuiopasdfghjklzxcvbnm1234567890-=[];',.!@#$%^&*()")
Run Code Online (Sandbox Code Playgroud)
用字典执行时间
设定执行时间
database ×1
dictionary ×1
foreign-keys ×1
hashtable ×1
python ×1
python-3.x ×1
set ×1
sqlite ×1