2017-04-01 45 views

回答

1

編輯#1:

我發現這個問題:https://youtrack.jetbrains.com/issue/PY-18597並且有一個答案:

PyCharm 2017.1 EAP建立現在總是喜歡存根文件在Python路徑上找到Python文件。

意思就是說Pycharm將尋找是否存在這樣的文件是什麼在.pyi文件存在,它會使用此作爲參考。所以你沒有別的選擇,只能在.pyi文件中聲明所有的函數。

您可以找到如何避免here

編輯#2潛在惱人的警告和錯誤的一些知識:

是的,我可以證實,由於預期PyCharm以及可能from ... import *不起作用成爲一個可以開放問題的錯誤(或者如果某人成功完成了這項工作,請告訴我們該怎麼做)!

我找到了一個解決辦法在此基礎上報價:

模塊和導入存根變量不考慮從存根出口,除非進口採用進口... ...作爲形式或等價從...進口...作爲...形式。

如果您:from file_a import a as a, b as b ...然後一切變得無人盯防的預期,但在from file_a ...會給你以下警告:

Import resolves to its containing file... (Ctrl+F1) 
This inspection detects names that should resolve but don't. Due to dynamic dispatch and duck typing, this is possible in a limited but useful number of cases. Top-level and class-level items are supported better than instance items. 

不要驚慌,因爲解釋here這是一個關於可能的陰影警告的模塊名稱由您的文件名(這不適用於您的情況!)

+0

感謝您的答案。但我創建.pyi文件以提高完成度。在這種情況下,情況只會變得更糟。 – ADR

+0

我根據新的發現編輯了我的答案,看看:) –

+0

我讀過它。但是還沒有找到問題的答案......我嘗試在.pyi文件中寫入'from file_a import *'。但它沒有奏效。這是錯誤還是功能? – ADR

相關問題