我需要比较存储在唯一列表中的数百个对象以查找重复项:
object_list = {Object_01, Object_02, Object_03, Object_04, Object_05, ...}
Run Code Online (Sandbox Code Playgroud)
我编写了一个自定义函数,True如果对象相等则返回 ,False否则返回:
object_01.compare(object_02)
>>> True
Run Code Online (Sandbox Code Playgroud)
Compare 方法效果很好,但每次执行需要花费大量时间。我目前正在使用itertools.combinations(x, 2)迭代所有组合。我认为使用字典来存储已经比较的对象并动态创建新集合是一个好主意,如下所示:
dct = {'Compared': {}}
dct['Compared'] = set()
import itertools
for a, b in itertools.combinations(x, 2):
if b.name not in dct['Compared']:
if compare(a,b) == True:
#print (a,b)
key = a.name
value = b.name
if key not in dct:
dct[key] = set()
dct[key].add(value)
else:
dct[key].add(value)
dct[key].add(key)
dct['Compared'].add(b)
Run Code Online (Sandbox Code Playgroud)
电流输出:
Compared: {'Object_02', 'Object_01', 'Object_03', 'Object_04', 'Object_05'}
Object_01: {'Object_02', …Run Code Online (Sandbox Code Playgroud) 我正在尝试为我的vimeo视频添加循环功能,但无法正常工作.你知道Chrome(Mac)是否支持它还是有办法解决它?
<iframe src="//player.vimeo.com/video/112412666#t=0s?title=0&byline=0&portrait=0&autoplay=1&loop=1" width="700" height="467" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
Run Code Online (Sandbox Code Playgroud) 我在我的网站上使用svg动画,但它也必须在不支持svg的旧版浏览器中运行.我可以通过重定向到静态页面来解决这个问题.
但是甚至可以在javascript的帮助下检测浏览器是否支持svg?
任何帮助,将不胜感激.