Trong python, bạn có thể làm điều gì đó nhưtrích xuất/lát/sắp xếp lại danh sách trong (emacs) lisp?
i = (0, 3, 2)
x = [x+1 for x in range(0,5)]
operator.itemgetter(*i)(x)
để có được (1, 4, 3)
. In (emacs) lisp, tôi đã viết chức năng này được gọi là chiết xuất mà làm điều gì đó tương tự,
(defun extract (elems seq)
(mapcar (lambda (x) (nth x seq)) elems))
(extract '(0 3 2) (number-sequence 1 5))
nhưng tôi cảm thấy như có một cái gì đó nên được xây dựng vào? Tất cả những gì tôi biết là first, last, rest, nth, car, cdr
... Con đường để đi là gì? ~ Cảm ơn trước ~
Không biết điều đó. Vì vậy, đối với vấn đề này, tôi phải quyết định xem chi phí của việc tạo ra một véc tơ có đáng giá thêm phí truy cập không đổi. – hatmatrix