配置 IPython 以始终显示警告
Configure IPython to show warnings all the time
我第一次在 IPython shell 中做一些引发警告的事情,我看到了。但后来我没有。例如,
In [1]: import numpy as np
In [2]: np.uint8(250) * np.uint8(2)
/Users/me/anaconda/envs/py33/bin/ipython:1: RuntimeWarning: overflow encountered in ubyte_scalars
#!/bin/bash /Users/me/anaconda/envs/py33/bin/python.app
Out[2]: 244
In [3]: np.uint8(250) * np.uint8(2)
Out[3]: 244 # No warning!
如何配置 IPython 以始终显示警告?我试过:
import warnings
warnings.filterwarnings('always')
但这没有任何区别。
我认为 IPython 团队相对 recently 解决了这个问题。由于某种不寻常的设计决定,它在 warnings
上表现不佳。在 Python 中打开 always
对我来说就足够了,现在如果我在 IPython 中做同样的事情:
In [1]: import warnings
In [2]: warnings.filterwarnings('always')
In [3]: import numpy as np
In [4]: np.uint8(250) * np.uint8(2)
/home/dsm/sys/root/bin/ipython3.4:1: RuntimeWarning: overflow encountered in ubyte_scalars
#!/home/dsm/sys/root/bin/python3.4
Out[4]: 244
In [5]: np.uint8(250) * np.uint8(2)
/home/dsm/sys/root/bin/ipython3.4:1: RuntimeWarning: overflow encountered in ubyte_scalars
#!/home/dsm/sys/root/bin/python3.4
Out[5]: 244
我第一次在 IPython shell 中做一些引发警告的事情,我看到了。但后来我没有。例如,
In [1]: import numpy as np
In [2]: np.uint8(250) * np.uint8(2)
/Users/me/anaconda/envs/py33/bin/ipython:1: RuntimeWarning: overflow encountered in ubyte_scalars
#!/bin/bash /Users/me/anaconda/envs/py33/bin/python.app
Out[2]: 244
In [3]: np.uint8(250) * np.uint8(2)
Out[3]: 244 # No warning!
如何配置 IPython 以始终显示警告?我试过:
import warnings
warnings.filterwarnings('always')
但这没有任何区别。
我认为 IPython 团队相对 recently 解决了这个问题。由于某种不寻常的设计决定,它在 warnings
上表现不佳。在 Python 中打开 always
对我来说就足够了,现在如果我在 IPython 中做同样的事情:
In [1]: import warnings
In [2]: warnings.filterwarnings('always')
In [3]: import numpy as np
In [4]: np.uint8(250) * np.uint8(2)
/home/dsm/sys/root/bin/ipython3.4:1: RuntimeWarning: overflow encountered in ubyte_scalars
#!/home/dsm/sys/root/bin/python3.4
Out[4]: 244
In [5]: np.uint8(250) * np.uint8(2)
/home/dsm/sys/root/bin/ipython3.4:1: RuntimeWarning: overflow encountered in ubyte_scalars
#!/home/dsm/sys/root/bin/python3.4
Out[5]: 244