Является ли «предложение» типа для общих методов Python возможна в VSCODE?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Является ли «предложение» типа для общих методов Python возможна в VSCODE?

Сообщение Anonymous »

В C# можно «предложить», какая функция Type A использует общая функция, используя ее вручную, вместо того, чтобы позволить компилятору угадать ее из контекста. Vscode.

причина в том, что у меня есть функция поиска, которая возвращает tkinter.widget < /code>, но в зависимости от того, какой виджет он смотрит, это может быть любой вариант этого. to expect to get specific properties too.

I've found out that I can "force" a type onto a variable, by using widget: tkinter.Label = getWidget() to tell VSCode that the result is to be treated as a tkinter.Label, but at this point I'm simply curious if an approach closer to C#'s, maybe with an optional named parameter, exists as Что ж.

Код: Выделить всё

public class JsonConfig
{
public static T Load(string jsonFile = null) { ... }
}
< /code>
Это фрагмент из класса, который я написал, чтобы легко использовать Newtonsoft.json < /code> для (de) сериализации моих собственных простых классов настройки.

Полезная часть об генерике C#заключается DataType до словаря  
и list и любую структуру, которая может быть построена с ними.

Код: Выделить всё

var data = ConfigInstance.Load();
Тогда IDE знает, что ожидаемый результат, заканчивающийся в переменной, должен быть списком , а оттуда в обращении переменной как таковой для Intellisense и т. Д.
В vscode python ближайший к этому поведению настройка верхового типа по умолчанию

Код: Выделить всё

def Load(jsonFile: str = None) -> tkinter.Widget: ...
< /code>
и при необходимости «принуждение» переменной, в которую я загружаю, чтобы взять ожидаемый производный тип < /p>
frame: tkinter.Frame = Load()
На данный момент мне просто интересно, есть ли другой подход к этому, возможно, предоставив ожидаемый тип возврата с именованной переменной, или, однако Pylanc>

Подробнее здесь: https://stackoverflow.com/questions/765 ... -in-vscode
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»