Forwarded from Deleted Account
可是我只写应用,用户感受不到那”慢“啊
我只在乎代码好不好看,我觉得
我只在乎代码好不好看,我觉得
(x in xs) 很直接"dog" in animals 足够好看Forwarded from Deleted Account
好,我这就来测试一下。
—
接下来我们就小小地测试一下
现在你说哪个快???是用 (x in xs) 好还是用
from time import perf_counter
def measureTime(op: callable) -> int:
started = perf_counter()
op(); ended = perf_counter()
return ended - started
def repeat(n, op: callable):
for _ in range(1, n):
op() —
measureTime(lambda: repeat(100, lambda: print("wtf"))) #0.0015090369997778907 接下来我们就小小地测试一下
x in xs 和 xs.__contains__(x)。COUNT = 1_000_000
list = [1, 2, 3]
measureTime(lambda: repeat(COUNT, lambda: 4 in list)) #0.3801817240018863measureTime(lambda: repeat(COUNT, lambda: list.__contains__(4))) #0.5797258120001061现在你说哪个快???是用 (x in xs) 好还是用
xs.__contains__(x) 好还是说你有其他方法?Forwarded from Deleted Account
所以说我测试了,所以说请为你的”好看 必要 跑得快“ 这个逻辑 进行举证,或者质疑我的性能评测有问题。
Forwarded from Deleted Account
好,我试试,但数据是 [1,2,3],你说我怎么给它转化成 dict?
这样吧,我
这样吧,我
list = dict([(x, x) for x in list])Forwarded from Deleted Account
群友,big-O notation 是 O(1), O(n),不是 o1 on……
Forwarded from 任桑 今天开始做魔王
因为list是无索引数组,查询的时候是遍历查询,所以建议不要用in list,我一开始是不是这么说的
Forwarded from Deleted Account
语法的实现是抽象的,我是这个意思,看你开始的时候是说”不要用 in“,没说”不要用 list“,这是在概论你所谓的”in“语法。
所以我不懂 HashSet?就看我是从 Java 群来的,这是一种偏见好不好……
所以我不懂 HashSet?就看我是从 Java 群来的,这是一种偏见好不好……
Forwarded from Deleted Account
我真的觉得很草啊,怎么感觉这群友是误会我说 list 和 dict ”性能“不一样了的感觉
我没说 list 和 dict 啊,我是在反驳他开始说的”别用 (x in xs)“……
还有我理不理解语法和这个问题有什么关系,难道我真的不理解语法?……
我没说 list 和 dict 啊,我是在反驳他开始说的”别用 (x in xs)“……
还有我理不理解语法和这个问题有什么关系,难道我真的不理解语法?……
Forwarded from Deleted Account
我那时候说的是 set,然后他在比较 list 和 dict,根本就不是一个抽象数据结构好不好……
而且他说”最好操作 dict 而不是 list“也会让人误会啊,因为有人就是要操作 list,和 dict 有啥关系……他说先转化为 dict 再查询不就好理解了……
而且他说”最好操作 dict 而不是 list“也会让人误会啊,因为有人就是要操作 list,和 dict 有啥关系……他说先转化为 dict 再查询不就好理解了……
Forwarded from Deleted Account
可是我们刚才谈的是 很大的数据存量,然后操作…… 而不是创建很多的 dict, list, set 实例……
Forwarded from 任桑 今天开始做魔王
不熟悉语法本身没什么丢人的,大家都在一点点抠一点点的看,一起探索交流,不清楚的地方大家会一起解释和探讨,你要觉得自己很厉害,听一帮都不知道是谁的群友为你讲解,让你感觉丢人,也没关系,开个小号到群里问就是了,不要在这里犟,大家都不开心,你也得不到提高