Как определить тип в F #? - PullRequest
       6

Как определить тип в F #?

0 голосов
/ 30 сентября 2018

В Python я мог увидеть тип переменной, набрав:

>>> i = 123
>>> type(i)
<type 'int'>

Есть ли способ сделать это в F #?

Ответы [ 2 ]

0 голосов
/ 30 сентября 2018

Если вы хотите сделать это в F # Interactive, вам просто нужно оценить переменную, набрав ее имя (за которым следует ;;, как и для любого другого выражения в приглашении F # Interactive).То есть, если вы уже выполнили let num = 123, тогда вы просто наберете num;; в диалоговом окне F # и вы увидите следующее:

val it : int = 123

Слово val означает, чтоF # Interactive описывает значение.Имя it - это специальное имя в F # Interactive, присваиваемое последнему значению, которое было оценено.Затем следует двоеточие, тип значения (в данном случае int), затем знак равенства и затем значение распечатывается.

Итак, все, что вам нужно сделать, чтобы увидеть значение и тип переменной в F # Interactive - просто ввести эту переменную, за которой следует ;;.Простой.

0 голосов
/ 30 сентября 2018

F # - это язык .NET, и в .NET все типы являются потомками System.Object, который имеет метод GetType:

let i = 123
let t = i.GetType()

Сказав это, я должен настоятельно призвать вас неполагаться на информацию о типе среды выполнения, за исключением отладки или аналогичных целей.Это сделает вашу программу менее удобной для сопровождения и вернет вас к укусам в долгосрочной перспективе.

В Python вы можете обойтись без этого, потому что Python в любом случае динамически типизирован, так что еще одна проверка отложена до времени выполненияна самом деле не имеет значения.Но F # статически типизирован, и, откладывая типы во время выполнения, вы отбрасываете любую поддержку, которую может предоставить компилятор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...