ImportError:无法导入名称'inf'
我是Python新手,我有这个问题。当我运行我的剧本就说明这个错误:ImportError:无法导入名称'inf'
Traceback (most recent call last):
File "./message", line 2, in <module>
from src.graph_lib import *
File "/export/home/xsymersk/TGR/src/graph_lib.py", line 2, in <module>
from math import inf
ImportError: cannot import name 'inf'
我的代码有这个进口结构:
graph_lyb.py:
from src.dfs_lib import *
from math import inf
from collections import Counter
from operator import itemgetter
dfs_lib.py:
from enum import Enum
message.py:
from src.graph_lib import *
from sys import stdin
forest.py:
from src.graph_lib import *
from sys import stdin
race.py:
from src.graph_lib import *
from sys import stdin
代码运行而不会inf
进口。
您不必从数学模块中导入inf
。 math.isinf
函数存在,但为了定义无限值,您可以使用float('inf')
。
你使用哪个python版本? (:https://docs.python.org/3/library/math.html#math.inf相关链接)
您应该检查你使用Python版本
的inf
常数math
封装在Python的3.5
实现。
哦,我有更低的版本,有什么作为inf? –
我拥有它,float(“inf”) –
如前所述,math.inf
是python 3.5的新增功能。 inf
一直是float('inf')
和math.inf
是真的只是一个方便。如果你喜欢使用math.inf
,你可以限制你的代码,以支持版本
import sys
if sys.version_info < (3,5):
raise ImportError('{} requires python version 3.5 or later'.format(__name__))
或者你可以自行添加在Python 3.5加入
import sys
import math
if sys.version_info < (3,5):
math.inf = float('inf')
math.nan = float('nan')
math.tau = math.pi * 2.
'math.inf'。 – vaultah