提问人:MatCat 提问时间:7/6/2023 更新时间:7/15/2023 访问量:52
无法使用 -OO 标志使用 astropy 运行代码
Can't run code with astropy using -OO flag
问:
我的代码按预期在 python 中运行,没有 python 标志,或者带有 -O 标志。它不适用于 -OO 标志。我的代码使用 astropy。Astropy 是一个 python 包,包含多个子包并使用了第三方代码层。
我已将代码简化为重现错误的最简单方法。minimalTest.py 内容为:
import astropy.coordinates
print('hello world')
以下 2 个命令按预期工作(每个命令都打印“hello world”):
# python3 minimalTest.py
# python3 -O minimalTest.py
以下代码会生成错误:
# python3 -OO minimalTest.py
Traceback (most recent call last):
File "/tmp/minimalTest.py", line 1, in <module>
import astropy.coordinates
File "/usr/local/lib/python3.9/site-packages/astropy/coordinates/__init__.py", line 13, in <module>
from .builtin_frames import *
File "/usr/local/lib/python3.9/site-packages/astropy/coordinates/builtin_frames/__init__.py", line 30, in <module>
from .cirs import CIRS
File "/usr/local/lib/python3.9/site-packages/astropy/coordinates/builtin_frames/cirs.py", line 8, in <module>
from .utils import DEFAULT_OBSTIME, EARTH_CENTER
File "/usr/local/lib/python3.9/site-packages/astropy/coordinates/builtin_frames/utils.py", line 16, in <module>
from astropy.utils import iers
File "/usr/local/lib/python3.9/site-packages/astropy/utils/iers/__init__.py", line 1, in <module>
from .iers import *
File "/usr/local/lib/python3.9/site-packages/astropy/utils/iers/iers.py", line 23, in <module>
from astropy.table import MaskedColumn, QTable
File "/usr/local/lib/python3.9/site-packages/astropy/table/__init__.py", line 118, in <module>
import astropy.io.ascii.connect
File "/usr/local/lib/python3.9/site-packages/astropy/io/ascii/__init__.py", line 8, in <module>
from .basic import (
File "/usr/local/lib/python3.9/site-packages/astropy/io/ascii/basic.py", line 44, in <module>
class Basic(core.BaseReader):
File "/usr/local/lib/python3.9/site-packages/astropy/io/ascii/core.py", line 1233, in __init__
func.__doc__ += inspect.cleandoc(cls.__doc__).strip()
File "/usr/local/lib/python3.9/inspect.py", line 632, in cleandoc
lines = doc.expandtabs().split('\n')
AttributeError: 'NoneType' object has no attribute 'expandtabs'
我认为这个问题可能与几年前关闭的 https://github.com/astropy/astropy/issues/10361 有关。此问题与 ply(astropy 使用的第三方代码)如何处理文档字符串有关。
我已经在带有 Python 3.9.10 的 Centos7 和带有 Python 3.11.2 的 Windows10 上重现了这个问题。
答:
0赞
MatCat
7/15/2023
#1
Astropy 代码库已更新,添加了对 -OO 标志的支持。https://github.com/astropy/astropy/pull/15037
请注意,此更新没有修复 Astropy 和 Nuitka 之间的兼容性问题,但直接在他们的 github 页面上跟踪这个问题。
评论
-OO
-OO
-O