[英]Installing functools gives me AttributeError 'module' object has no attribute 'compose'
[英]'module' object has no attribute 'compose'
與此問題相關,但我使用的是較新的 Ubuntu,並且安裝了functools
但無法正常工作。
我在 Ubuntu 16.04 64 位上,每當我嘗試在 Python 中做任何有趣的事情時,都會導致錯誤:
...something relevant to the actual application
...
File "/usr/lib/python2.7/locale.py", line 17, in <module>
import functools File "/usr/local/lib/python2.7/dist-packages/functools.py", line 72, in
<module>
globals()['c_%s' % x] = globals()[x] = getattr(_functools, x) AttributeError: 'module' object has no attribute 'compose'
這已經用conjure-up
、 Robert
和一些實際的 python 代碼進行了嘗試。 我能做些什么來修復它?
我的functools.py
的相關部分如下所示:
try:
import _functools
except ImportError:
pass
else:
for x in __all__:
globals()['c_%s' % x] = globals()[x] = getattr(_functools, x)
del x
所以,據我所知,python 嘗試導入_functools
,失敗並嘗試使用getattr
啟動一些循環,這就是它無法找到某些模塊屬性的地方。
我會考慮一些事情來重新開始......首先,當我遇到這樣的問題時,我通常確保我可以在 shell 中運行命令:
user@host:~$ python
>>> import functools
>>> # then do some other stuff to convince yourself it's working
另外,安裝virtualenv
( virtualenvwrapper
),然后創建一個用於測試:
user@host:~$ mkvirtualenv venv
(venv) user@host:~$ python
>>>> # test here
另一件要嘗試的事情是獲取另一個版本的 Python,比如版本 3(對於像 Ubuntu 這樣的操作系統):
https://askubuntu.com/questions/865554/how-do-i-install-python-3-6-using-apt-get
然后用這個版本的 Python 創建一個virtenv
:
user@host:~$ mkvirtualenv --python=/usr/bin/python3.6
看起來您的 Python 原始安裝存在一些問題,並且可能難以排除故障。
如果這不起作用,您的主要 Python 可能需要修復。 如果您使用的是 Linux,遇到此問題可能會導致其他程序無法正常運行。
如果您認為 Python 的安裝以某種方式損壞或損壞,我可能會考慮重新安裝它,SO 上有幾篇文章涵蓋了這一點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.