Ошибка при создании словаря с одним значением - PullRequest
1 голос
/ 11 мая 2019

Когда я создаю словарь с одним значением типа int / long, создается словарь

`ke!1 / Output- `ke!1i

Но когда я создаю словарь со значением в виде одного символа, символа или строки, возникает ошибка типа.

`ke!`a    / 'type
`ke!"a"   / 'type
`ke!"abc" / 'type
`ke!enlist(`a) / `type
`ke!(enlist "a") / 'type

Попробовал еще несколько комбинаций, но безрезультатно.
«Q для смертных» и «Справочная карточка» также не дают никакого понимания.
Пожалуйста, дайте мне знать причину ошибки типа и как ее можно устранить?

1 Ответ

4 голосов
/ 11 мая 2019

! довольно перегружен в д. В этом случае, когда левый параметр является атомом символа, вы фактически создаете перечисление.

q)type `ke!1i
-21h

Вы можете создать нужный словарь, завербовав обе стороны.

q)type(enlist `ke)!enlist 1i
99h

На этой странице содержится краткое описание различных вариантов использования!.

...