In this topic:
When you reference a class that has not been imported, PyCharm helps you locate this file and add it to the list of imports . You can import a single class or an entire package, depending on your settings.
The import statement adds to the imports section, but the cursor does not move from the current position, and your current editing session does not interrupt. This feature is known as the Import Assistant.
The same possibility applies to the XML files. When you type a tag with an unbound namespace, import assistant suggests to create a namespace and offers a list of appropriate choices.
Importing packages on the fly
To import packages on-the-fly, follow these steps:
- Start typing a name in the editor. If the name references a class that has not been imported,
the following prompt appears:
If the pop-up annoys you, change this behavior for the current file. Just click Hector in the Status bar, and clear the check box Import Pop-up:
The unresolved references will be underlined, and you will have to invoke intention action Add import explicitly.
- Press Alt+Enter. If there are multiple choices, select the desired import from the list.
Importing an XML Namespace
To import an XML namespace, follow these steps:
- Open the desired file for editing, and start typing a tag. If a namespace is not bound, the following prompt appears:
- Press Alt+Enter. If there are multiple choices, select the desired namespace from the list.
Importing TypeScript Symbols
In the TypeScript context, PyCharm can generate
import statements for modules, classes,
and any other symbol that can be exported and called as a type. Open the desired file in the editor and do one of the following:
- Start typing the short name of a symbol. From the suggested variants for completion, select the relevant symbol name:
- Position the cursor at the unresolved symbol, which is displayed in red, and press Alt+Enter: On the context menu, select Add import statement and press Enter.
- Configure PyCharm to show a pop-up every time you hover the mouse pointer over an unresolved reference which required import:
In either case, PyCharm inserts an