Als «type-hinting» getaggte Fragen

Typhinweise binden Funktionsargumente an bestimmte Objekte oder geben sie stark ein.


2
Unterschied zwischen der Definition der Eingabe. Diktat und Diktat?
Ich übe die Verwendung von Typhinweisen in Python 3.5. Einer meiner Kollegen verwendet typing.Dict: import typing def change_bandwidths(new_bandwidths: typing.Dict, user_id: int, user_name: str) -> bool: print(new_bandwidths, user_id, user_name) return False def my_change_bandwidths(new_bandwidths: dict, user_id: int, user_name: str) ->bool: print(new_bandwidths, user_id, user_name) return True def main(): my_id, my_name = 23, "Tiras" …




5
PHP 7-Schnittstellen, Rückgabetyp und Self
UPDATE : PHP 7.4 unterstützt jetzt Kovarianz und Kontravarianz, wodurch das in dieser Frage aufgeworfene Hauptproblem behoben wird. Ich bin auf ein Problem mit der Verwendung von Hinweisen zum Rückgabetyp in PHP 7 gestoßen. Mein Verständnis ist, dass Hinweise : selfbedeuten, dass Sie beabsichtigen, dass eine implementierende Klasse sich selbst …

2
Wie soll ich den optionalen Typhinweis verwenden?
Ich versuche zu verstehen, wie man den OptionalTyphinweis verwendet. Von PEP-484 , weiß ich , ich kann Optionalfür def test(a: int = None)entweder als def test(a: Union[int, None])oder def test(a: Optional[int]). Aber wie wäre es mit folgenden Beispielen? def test(a : dict = None): #print(a) ==> {'a': 1234} #or #print(a) …


2
JetBrains WebIDE: Hinweise auf PHP-Variablentypen?
Gibt es eine Möglichkeit, WebIDE darauf hinzuweisen, dass eine Variable einen Typ hat? Ich muss ein Array von Objekten iterieren, und es ist keine automatische Vervollständigung verfügbar. Dies hilft in ZendStudio: /* @var ClassName $object */ Ich weiß, dass JetBrains eine Funktion zum Deklarieren einer Reihe von Objekten enthält: /** …


5
Geben Sie hinting / annotation (PEP 484) für numpy.ndarray ein
Hat jemand Typhinweise für die jeweilige numpy.ndarrayKlasse implementiert ? Im Moment benutze ich typing.Any, aber es wäre schön, etwas Spezifischeres zu haben. Zum Beispiel , wenn die NumPy Menschen hinzugefügt einen Typen alias für ihre array_like Objektklasse. Besser noch, implementieren Sie die Unterstützung auf dtype- Ebene, damit andere Objekte sowie …

8
PHP-Typ-Hinweis auf primitive Werte?
Ich würde gerne wissen, ob man eine Methode tippen kann, um primitive Typen zu erwarten? Etwas wie das: public function someMethod(string $str) //^^^^^^ Oder: private function anotherMethod(int $num) //^^^ genauso wie du: private function otherMethod(Person $rambo) //^^^^^^ Ist das in PHP möglich?

8
Wie verwende ich Hinweise vom Typ Python mit Django QuerySet?
Ist es möglich, den Datensatztyp in Django QuerySet mit Python-Typhinweisen anzugeben? So etwas wie QuerySet[SomeModel]? Zum Beispiel haben wir Modell: class SomeModel(models.Model): smth = models.IntegerField() Und wir möchten QuerySet dieses Modells als Parameter in func übergeben: def somefunc(rows: QuerySet): pass Aber wie man den Datensatztyp in QuerySet angibt, wie bei …

2
Unterstützt eine "with" -Anweisung Typangaben?
Können Sie den Typhinweis für eine mit der withSyntax definierte Variable definieren ? with example() as x: print(x) Ich möchte den obigen Hinweis eingeben, um zu sagen, dass dies xein str(als Beispiel) ist. Die einzige Lösung, die ich gefunden habe, ist die Verwendung einer Zwischenvariablen, aber das fühlt sich hackig …

2
Warum erhalte ich plötzlich den Fehler "Auf typisierte Eigenschaften darf vor der Initialisierung nicht zugegriffen werden", wenn ich Hinweise zum Typ der Eigenschaften eingebe?
Ich habe meine Klassendefinitionen aktualisiert, um die neu eingeführten Hinweise zum Eigenschaftstyp wie folgt zu verwenden: class Foo { private int $id; private ?string $val; private DateTimeInterface $createdAt; private ?DateTimeInterface $updatedAt; public function __construct(int $id) { $this->id = $id; } public function getId(): int { return $this->id; } public function …
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.