型ヒント
DataSpell は、スクリプト内のオブジェクトのタイプのインスペクションとチェックを支援するさまざまな手段を提供します。DataSpell は、typing モジュールと PEP 484(英語) で定義された形式を使用して、関数アノテーションと型コメントで型ヒントをサポートします。
型ヒントを追加する
DataSpell は PEP 484(英語) でサポートされている型の追加方法をすべてサポートしていますが、インテンションアクションを通じて型ヒントを使用するのが最も便利です。使用するインタープリターに応じて、型はアノテーション(Python 3)またはコメント(Python 2)として追加されます。
コード要素を選択します。
Alt+Enter を押します。
型ヒントを追加 ... を選択します。
適切な場合は、Enter を押してアクションを完了するか、タイプを編集します。
サンプル | インテンションアクション | アノテーションの結果コード (Python 3) |
|---|---|---|
変数 | ![]() | ![]() |
関数 | ![]() | ![]() |
クラス属性 | ![]() | ![]() |
サンプル | インテンションアクション | コメントの結果コード (Python 2) |
|---|---|---|
変数 | ![]() | ![]() |
関数 | ![]() | ![]() |
クラス属性 | ![]() | ![]() |
Python スタブを使用して、変数、関数、クラスフィールドの型を指定することもできます。
コメントを変換する
コメントベースの型ヒントの場合、DataSpell は、コメントベースの型ヒントを変数アノテーションに変換できるインテンションアクションを提案します。このインテンションには変数アノテーションに変換するという名前があり、次のように動作します。
前 | 後 |
|---|---|
from typing import List, Optional
xs = [] # type: List[Optional[str]]
|
from typing import List, Optional
xs: List[Optional[str]] = []
|
型ヒントを検証する
型ヒントを適用するときはいつでも、DataSpell は、サポートされている PEP に従ってタイプが正しく使用されているかどうかをチェックします。使用箇所エラーがある場合、対応する警告が表示され、推奨されるアクションが提案されます。以下は検証の例です。
検証エラー | 推奨アクション |
|---|---|
型宣言の重複。 ![]() | いずれかの型宣言を削除します。 |
型宣言の引数の数は、関数の引数の数とは異なります。 ![]() | 引数の数を調整します。 |
アンパックを伴う型コメントは、対応するターゲットと一致しません。 ![]() | ターゲットフォーマットをチェックし、それに応じてタイプコメントを変更してください。 |
| 推奨フォーマットを使用し、必要な角括弧を追加して |
代入式に予期しない型があります。 ![]() | 予想されるパターンに合うようにタイプを揃えます。 |
![]() | |
![]() | |
![]() | |
関数引数の型が正しくありません。 ![]() | リストの代わりに辞書を |
![]() |
|
![]() | 型定義で指定されているようにキーを割り当てます。
|
装飾された関数の不適切な使用。DataSpell は、デコレーターのタイプに基づいて、装飾された関数のタイプを検証します。 ![]() | 必要に応じて、関数 return を使用するデコレーターまたはステートメントを変更します。 |
# type: ignore または # noqa コメントを追加して、型検証の警告を抑制したり、欠落しているインポートステートメントを無視したりできます。

Python スタブ
DataSpell は Python スタブファイルをサポートします。
次の例では、スタブファイル (stubs.pyi) からの sample_function の型ヒントが Python ファイル (stubs.py) で使用可能になります。
スタブアナログが検出されたパッケージを使用している場合は、次のメッセージが表示されます。
スタブパッケージをインストールし、このメッセージを無視して現在インストールされているパッケージで作業を続行するか、プロジェクト設定でこの種のインスペクションを無効にすることができます。
Typeshed を使用する
Typeshed(英語) は、標準の Python ライブラリとさまざまなパッケージの型アノテーションが付いたファイルのセットです。Typeshed スタブは、型ヒントで定義された Python クラス、関数、モジュールの定義を提供します。DataSpell は、この情報を使用して、コード補完、インスペクション、その他のコードインサイト機能を向上させます。
DataSpell には Typeshed(英語) スタブがバンドルされています。使用可能な Typeshed スタブのリストは、ノード外部ライブラリ | <Python インタープリター> | Typeshed スタブのプロジェクトビューに表示されます。
バンドルされた Typeshed リポジトリを独自のバージョンでオーバーライドするには、次の手順を実行する
スタブの一部またはすべてをプロジェクトのディレクトリにコピーします。
ディレクトリのコンテキストメニューからディレクトリをマーク | ソースルートを選択して、ディレクトリをソースルートとしてマークします。
Python スケルトンリポジトリ https://github.com/JetBrains/python-skeletons(英語) は廃止予定です。
関連ページ:
Python
DataSpell で Python スクリプトを開発するには:Python をダウンロードしてインストールします。少なくとも 1 つの Python インタープリターを構成します。Windows ユーザーの場合、Windows 用 Python をインストールすることをお勧めします。サポートされるバージョン:Python 2: バージョン 2.7、Python 3: バージョン 3.9 からバージョン 3.15 まで、次の機能は、Python 3.14 サポートの一部として使用できます。PEP 7...
作業環境を整える
DataSpell の Python インタープリター:DataSpell でノートブックまたは Python コードを実行するには、Python インタープリターに基づく仮想環境を少なくとも 1 つ設定する必要があります。Python インストールで利用可能なシステムインタープリターを使用できます。また、Virtualenv、pipenv、Poetry、conda 仮想環境を作成することもできます。仮想環境は、ベースインタープリターとインストールされたパッケージで構成されます。DataSpel...
Python コードインサイト
コードインサイトは、コード補完、インテンションアクション、型推論、DataSpell のコード分析に関連するその他のテクニックに使用される一般的な名前です。構文のハイライト:DataSpell エディターは、キーワード、コメント、パラメーター、その他の要素のハイライトを考慮します。class Car:
Python コードを実行する
Python ファイルを作成し、仮想環境を構成したら、コードを実行できます。Python エディターツールバーを使用すると、最も人気のあるアクションにすばやくアクセスできます。選択したセルにコードセルを追加します。選択したコードセルの現在の位置をクリップボードに移動します。選択したコードセルをクリップボードにコピーします。クリップボードの内容を、選択したコードセルの新しいコードセルに挿入します。現在のセルを上に移動します。




















