我有一个项目,多个文件正在从common.py
文件中导入,因为它们都使用相同的模块/包,而且我想要统一,而且在一个地方更改值或包更容易。
common.py
看起来像这样(只有更长的时间):
import json
import os
import sys
from datetime import datetime
from pathlib import Path
from pprint import pprint
from time import sleep
import requests
from bs4 import BeautifulSoup
from fake_useragent import UserAgent
from pdir.api import PrettyDir
# AND MUCH MORE... with other common functions and classes
项目中的所有其他文件都以以下内容开头:
from common import *
一切都很好。但是,由于common.py
本身没有使用某些导入,所以PyCharm无法看到它们在其他模块中使用,并将它们标记为“未使用的导入语句”。
我不想让整个项目的检查保持沉默,因为它在其他地方很有用。是否有任何方法强迫PyCharm检查导入是否在项目的其他地方使用,或者只对此文件进行沉默检查?
发布于 2019-11-21 13:42:03
最后我自己解决了这个问题,所以把这些步骤留给其他人去找:
# noinspection PyUnresolvedReferences
“类别下的”未解决的引用“。在右边有一个方框,上面写着“在所有的Scopes中”--点击它并选择我们的新范围(在本例中,名为# noinspection PyUnresolvedReferences
)。我现在不接受我自己的答案,因为我仍然希望有一个更简单的方法来完成这个任务。
发布于 2019-11-21 13:03:24
有两种选择:
# noinspection PyUnresolvedReferences
(在操作对话框中作为选项提供)来抑制检查。不幸的是,这只适用于一次一行或块,而不是整个文件。因此,您要么必须注释每一行,要么就为了这个目的将所有导入语句放在某种块中(例如函数)。__all__ = ('json', ...)
行,以显式注释这些符号以供导出;不幸的是,您将不得不对每个导入的项进行注释。https://stackoverflow.com/questions/58975633
复制相似问题