小编Fou*_*ree的帖子

为什么不允许使用增强赋值表达式?

我最近阅读了关于赋值表达式的PEP 572,并偶然发现了一个有趣的用例:

# Compute partial sums in a list comprehension
total = 0
partial_sums = [total := total + v for v in values]
print("Total:", total)
Run Code Online (Sandbox Code Playgroud)

我开始自己探索该代码片段,很快发现这:+=不是有效的 Python 语法。

# Compute partial sums in a list comprehension
total = 0
partial_sums = [total :+= v for v in values]
print("Total:", total)
Run Code Online (Sandbox Code Playgroud)

:=我怀疑在如何实施方面可能存在一些根本原因,明智地排除了这种:+=情况,但我不确定它可能是什么。如果对 Python 更了解的人知道为什么:+=不可行或不切实际或未实现,请分享您的理解。

python

9
推荐指数
1
解决办法
524
查看次数

2
推荐指数
1
解决办法
418
查看次数

Python的collections.Counter.total()的时间复杂度是多少?

Python的collections.Counter.total()的时间复杂度是多少?我已阅读该方法的文档,但没有提及其效率。有谁知道该方法是如何在幕后实现的以及它的时间复杂度是多少?

python python-collections

0
推荐指数
1
解决办法
428
查看次数

标签 统计

python ×3

list ×1

loops ×1

python-collections ×1