如何解决python,我怎样才能把和如果放在一个引发错误的函数上?
大家好,我正在检查图中的循环
import networkx as nx
X2 = {"1": ["4"],"2": ["3"],"3": ["2","4"],"4": ["1","3"]}
L2 = []
for k,v in X2.items():
for i in range(len(v)):
L2.append((k,v[i]))
print(L2)
G = nx.DiGraph(L2)
G = G.to_undirected()
print(type(G))
print(nx.find_cycle(G))
在这种情况下,正确地没有循环,因此 nx 函数引发:
raise nx.exception.NetworkXNoCycle('No cycle found.')
networkx.exception.NetworkXNoCycle: No cycle found.
如果函数引发错误,我如何放置和 If 条件来打印某些内容?
解决方法
使用“try”和“except”关键字,阅读python中的异常处理。
基本上你需要:
try:
your_function_call(arguments)
except nx.exception.NetworkXNoCycle as e:
print("Found the no cycle exception)
,
您在这里寻找的是错误处理。对于您想要的错误,它就像 if
一样。
您可以通过 try/except
块实现这一点。更多详情here。
import networkx as nx
X2 = {"1": ["4"],"2": ["3"],"3": ["2","4"],"4": ["1","3"]}
L2 = []
for k,v in X2.items():
for i in range(len(v)):
L2.append((k,v[i]))
print(L2)
try:
G = nx.DiGraph(L2)
G = G.to_undirected()
print(type(G))
print(nx.find_cycle(G))
except:
print("Error message")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。