36 Stimmen

Wie kann ich eine Zeichenkette in eine Liste aufteilen?

Wenn ich diese Zeichenfolge habe:

2+24*48/32

wie diese Liste am effizientesten zu erstellen ist:

['2', '+', '24', '*', '48', '/', '32']

0 Stimmen

Sie wollen eine Zeichenkette in eine Liste aufteilen, aber Sie wollen nicht .split() verwenden, weil es eine Liste zurückgibt? Du widersprichst dir selbst. Wenn Sie keine Liste wollen, was wollen Sie dann tun wollen?

1 Stimmen

@Jim: Ich denke, Jibmo meint, dass split() nur die Angabe eines Trennzeichens erlaubt, so dass er es einmal für '+', einmal für '-', einmal für '/' usw. aufrufen müsste.

2 Stimmen

Sorry für die schlechte Erklärung, was ich meinte, ist, dass Split eine Liste zurückgibt, was bedeutet, für die zweite Split, ich muss jetzt über Zeichenfolgen innerhalb einer Liste zu iterieren. syntaktisch falsches Beispiel. string = "2+2-2" Liste = string.split(+) gibt ['2', '+', '2-2'] jetzt muss ich über 3 Zeichenfolgen iterieren

0voto

Diamond Python Punkte 345

Das beantwortet die Frage zwar nicht genau, aber ich glaube, dass es das Problem löst, das Sie zu lösen versuchen. Ich würde es als Kommentar hinzufügen, aber ich habe noch nicht die Erlaubnis, dies zu tun.

Ich persönlich würde die Vorteile der Mathematikfunktionen von Python direkt mit exec nutzen:

Ausdruck = "2+24*48/32"
Ausführung "Ergebnis = " + Ausdruck
drucken Ergebnis
38

0 Stimmen

Verzeihen Sie mir, wenn ich falsch liege, aber wäre es nicht besser, wenn Sie result = eval(expression) ?

0 Stimmen

In der Tat; ich bitte um Entschuldigung.

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