81 Stimmen

Wie kann man mehrere Anweisungen in die 'if'-Anweisung von Elisp schreiben?

In Elisp gibt es einen 'if'-Fall, in dem ich viele verschiedene Dinge ausführen möchte:

(if condition
    (do-something)
    (do-something-else)
    ...)

(do-something-else) wird jedoch nur im else-case ausgeführt. Wie kann man einen Block von Anweisungen angeben, der ausgeführt werden soll? Zum Beispiel:

(if condition
    (begin
        (do-something)
        (do-something-else)
        ...))

111voto

mipadi Punkte 377834

Verwenden Sie progn :

(if condition
    (progn
        (do-something)
        (do-something-else)))

54voto

Trey Jackson Punkte 72000

Wenn es keine else erforderlich ist, könnte die Verwendung lesbarer sein:

(when condition
    (do-something)
    (do-something-else))

Und das Gegenteil ist der Fall

(unless (not condition)
    (do-something)
    (do-something-else))

Überprüfen Sie die Emacs Lisp Handbuch für Konditionale .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X