簡體   English   中英

為什么我會得到`SystemError:<built-in method __contains__ of dict object at ...> 導入“pydrake”東西時返回帶有錯誤集的結果?</built-in>

[英]Why do I get `SystemError: <built-in method __contains__ of dict object at ...> returned a result with an error set` when importing `pydrake` stuff?

FTR:這是我對 Drake Slack 對話的“公開檔案”。


2019 年 9 月 17 日下午 2:44

(py36_pyro) gizatt@ProblemChild:~$ python
Python 3.6.9 |Anaconda, Inc.| (default, Jul 30 2019, 19:07:31)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pydrake
>>> import pydrake.geometry
terminate called after throwing an instance of 'pybind11::error_already_set'
what():  SystemError: <built-in method __contains__ of dict object at 0x7f266bd23438> returned a result with an error set
Aborted (core dumped)

任何想法從哪里開始? 它只在導入pydrake.geometry時發生,我可以先導入pydrakepydrake.commonpydrake.multibody等,這些都可以正常工作。 Python 3.6 / Ubuntu 18.04 / 當前主機

15 回復

eric.cousineau 7 個月前

Python 3.6.9 |Anaconda, Inc.| (default, Jul 30 2019, 19:07:31)

我認為Anaconda部分可能是可疑的? (請參閱此處頂部的警告: https://drake.mit.edu/python_bindings.html

eric.cousineau 7 個月前 以前有用嗎?

eric.cousineau 7 個月前你可以嘗試通過/usr/bin/python3運行它,而不是 Anaconda 嗎?

gizatt 7個月前我通過conda穩定使用了一段時間,這是新的

eric.cousineau 7 個月前嗯...你是用 Conda 自己構建的,還是下載預構建的?你知道它最后一次工作是什么時候嗎?

eric.cousineau 7 個月前(更具體地說,master 的 SHA1?)

gizatt 7 個月前,我使用 conda python(我在那里運行的同一個)構建它,盡管沒有 conda 環境來源——這在一段時間內工作正常。 破壞它的不是德雷克的升級——我懷疑我這邊的一些配置調整揭示了一些東西。 當我在 Drake 上時它壞了……也許是一周大? 我升級了,但不知道我從什么升級(已編輯)

gizatt 7 個月前對不起,它是用/usr/bin/python3.6構建的,沒有 conda envs 來源。 然后我采購了一個 conda env 並導入 drake 並將它與 conda python 一起使用,直到現在都很棒

eric.cousineau 7 個月前嗯...不知道如何在這里提供幫助...您是否以與pip兼容的方式使用conda 您可以只做純virtualenv並完全避免 conda 嗎? (我們正在使用來自pippyro和其他東西,它工作得很好。)(編輯)

eric.cousineau 7 個月前另外,Ubuntu(我的機器上的 3.6.8)和 Conda(你的機器上的 3.6.9)上的python3 --version可能有區別嗎? (已編輯)

gizatt 7 個月前我在 conda 中對版本進行了降級,現在版本至少是一致的

gizatt 7 個月前我一次移動了幾件東西,所以我還不確定罪魁禍首,但我已經確定,如果我嘗試從我的主目錄導入pydrake.geometry與我的 python3.6 版本中的任何一個,我得到問題,但如果我從其他任何地方這樣做,那很好。 (已編輯)

gizatt 7 個月前我只是呃...把這歸結為一些導入路徑 bs 並稱之為解決?

eric.cousineau 7 個月前SGTM,雖然這聽起來像是一個神奇的路徑陰影問題,就像你的主目錄中有一個pydrake文件夾? (已編輯)

eric.cousineau 7 個月前(此外,一些軟件包訂閱了從setup.py或 whatevs 安裝*.pth文件的邪惡,這與sys.path混淆......所以也許這取決於解釋器從哪里開始?)

這里的直接修復是降級 Conda 的 Python 版本以匹配pydrake的編譯版本,並確保沒有其他解釋器被獲取。

目前(2020/04/25), pydrake沒有正式編譯也沒有測試過 - 使用conda / anaconda ,所以可能存在未知問題。 如果可能,我們(Drake 開發人員)建議不要使用它,但如果您這樣做,目前您將自行承擔風險。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM