Как присвоить отрицательное число списку чисел?
Я читал в другом месте, что вы можете использовать (- number)
для отрицания числа , но по какой-то причине это не работает должным образом в списке: '((- 1) 2 3))
.
Как присвоить отрицательное число списку чисел?
Я читал в другом месте, что вы можете использовать (- number)
для отрицания числа , но по какой-то причине это не работает должным образом в списке: '((- 1) 2 3))
.
(- 1)
– это выражение, которое оценивает значение -1
. Заключение в кавычки ('
перед вашим кодом) предотвращает вычисление выражения. Следовательно:
> '((- 1) 2 3)
'((- 1) 2 3)
но
> (list (- 1) 2 3)
'(-1 2 3)
или, если вы читали о квазицитировании и хотите похвастаться
> `(,(- 1) 2 3)
'(-1 2 3)
'
, так как это меня действительно сбивает с толку. Мне пришлось написать несколько функций, каждая из которых принимала список, и я передал списки как (function-name '(1 2 3 4))
, и это сработало, поэтому я предположил, что создаю списки правильно, однако это не сработало в случае отрицательного значения, поэтому теперь я должен использовать (function-name (list (- 1) 2 3 4))
только в случае отрицательного списка. Это немного сбивает с толку. В любом случае, спасибо за быстрый ответ!
- person joe_04_04; 25.01.2018
'(-1 2 3 4)
.
- person uselpa; 25.01.2018
'(-1 2 3)
абсолютно нормально. - person phils   schedule 25.01.2018