在 python 中计数的更好的循环结构
better loop structure for counting in python
以下代码尝试计算某个子图结构有多少条外边。 substructure
是节点列表,graph[node]
returns 是 node
的邻居节点列表。
external_edge = 0
for node in substructure:
for neighbor in graph[node]:
if neighbor not in substructure:
external_edge += 1
有没有更好的方法来实现这个?我尝试了列表理解,但 external_edge+=1
不是表达式。
嗯..它不是更高效但可能更像 pythonic(使用带有 sum 函数的列表推导)。
external_age = sum(1 for node in substructure for neighbor in graph[node] if neighbor not in substructure)
因为你只需要外边的数量
len(node for node in substructure for neighbor in graph[node] if neighbor not in substructure)
以下代码尝试计算某个子图结构有多少条外边。 substructure
是节点列表,graph[node]
returns 是 node
的邻居节点列表。
external_edge = 0
for node in substructure:
for neighbor in graph[node]:
if neighbor not in substructure:
external_edge += 1
有没有更好的方法来实现这个?我尝试了列表理解,但 external_edge+=1
不是表达式。
嗯..它不是更高效但可能更像 pythonic(使用带有 sum 函数的列表推导)。
external_age = sum(1 for node in substructure for neighbor in graph[node] if neighbor not in substructure)
因为你只需要外边的数量
len(node for node in substructure for neighbor in graph[node] if neighbor not in substructure)