2017-01-28 17 views
1

私はPython3を使用していて、ちょうどmypyの使い方を学びました。私はドキュメントを読む(espcially thisの部分が関連しているように見える)が、私の質問への回答を見つけることができませんでした:mypy:複雑なタイプのショートカットを定義することは可能ですか?

タイプのいくつかのショートカットを定義することは可能ですか?

例:私はちょうど明確にする

from typing import List 

sequence = DefineTypeShortcut(List[int]) 

def f(x: sequence) -> sequence: 
    return x[1:] 

がしたい

よりもむしろ

from typing import List 


def f(x: List[int]) -> List[int]: 
    return x[1:] 

を書いて、私はちょうどしたい、新しいクラスSequenceを定義する必要はありませんより簡単に読むことのできる関数のシグネチャ。

答えて

1

はい、あなたはType Aliasesを探しています。幸いにも、彼らは新しい名前を割り当てることによって、その名前がそのタイプのヒントとして機能することができるように、かなり簡単です。私は12分で答えを受け入れることができ

from typing import List 
Vector = List[float] 

def scale(scalar: float, vector: Vector) -> Vector: 
    return [scalar * num for num in vector] 
+0

ドキュメントで提供される例は後にあなたがしている正確なものの例を提供します。 – Antoine

+0

@Antoineそれからそれをする必要は全くありません。スタックオーバーフローに関する回答を受け入れることで時間をかけ、多くの人が質問をし、必要と思われる場合は代替ソリューションを提供しましょう:-) –

関連する問題