Seite 1 von 1

ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 14:10
von koxbox
Hallo,

ich hab eigentlich ein ganz simples Problem.

ich habe einen string den ich auslese aus einer Datei:

'CentOS release 6.5 (Final)'

daraus brauche ich nur die Zahlen, also 6.5.

Python Version = 2.7

Code: Alles auswählen

import os
import re

READRELEASE = open('/etc/redhat-release', 'r').readline().split('\n', 1)[0]
RELEASEVERSION = re.findall(r'\d+', READRELEASE)
print RELEASEVERSION
da bekomme ich dann:

['6', '5']

ich brauche daraus jetzt nur die Zahl 6.
ich will dann die 6 mit "if" vergleichen.

also, wie bekomme ich da nur die Zahl 6

Danke & Grüße

Heiko

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 14:18
von /me
koxbox hat geschrieben: ['6', '5']

ich brauche daraus jetzt nur die Zahl 6.
Womit hast du denn konkret ein Problem? Wie du aus einer Liste das erste Element bekommst weißt du doch hoffentlich. Wenn nicht, dann wirf mal einen Blick ins Tutorial zum Thema Listen. Die Konvertierung eines Strings in eine Zahl mit Hilfe von int() kommt sogar noch früher im Tutorial.

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 14:41
von koxbox
Danke @ /me

das war es genau was ich suchte:

Lösung ist also:

print RELEASEVERSION[0]

6
koxbox hat geschrieben:Womit hast du denn konkret ein Problem? Wie du aus einer Liste das erste Element bekommst weißt du doch hoffentlich.
nein das wusste ich nicht :-) ich google mich gerade so durch nach dem was ich suche um das zu erreichen was ich will :-)

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 15:01
von /me
koxbox hat geschrieben:nein das wusste ich nicht :-)
OK, das war unerwartet. Bei jemandem, der Dateioperationen und reguläre Ausdrücke in Python einsetzt, war ich in der Tat von einem grundsätzlichen Verständnis der elementaren Datenstrukturen ausgegangen. Dann ist es ja prima, dass sich das Problem so einfach gelöst hat.

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 15:03
von BlackJack
@koxbox: Arbeite besser ein Grundlagentutorial durch. Zeichenketten, Liste, und Wörterbücher (`dict`) braucht man eigentlich bei jedem nicht-trivialen Programm, darum sollte man die Operationen damit schon kennen.

Der ``.split('\n', 1)[0]``-Teil ist zum Beispiel eine *sehr* umständliche Art die `rstrip()`-Methode zu umschreiben. Und eigentlich scheint mir das gar nicht nötig.

Vielleicht ist das `platform`-Modul auch interessant:

Code: Alles auswählen

In [17]: platform.linux_distribution()
Out[17]: ('Ubuntu', '11.04', 'natty')

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 16:02
von koxbox
@ /me

ich muss noch viel viel dazulernen!

@BlackJack

der Tip mit dem Plaform Modul ist auch prima.

Ich versuche anhand eines kleinen Projektes Python näher zu kommen.
Klar werde ich mir nach und nach auch in die Grundlagen vertiefen.

Python macht auf jeden fall spass!

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 16:13
von BlackJack
@koxbox: Wenn Du tatsächlich Python lernen willst, statt nur irgendwas mit Python zum laufen zu bringen, dann macht die Vorgehensweise noch weniger Sinn.

Denn dann bastelst Du irgendwelchen kruden Sachen aus zusammengesuchten Codeschnipseln und per Versuch und Irrtum um das dann später wenn Du die Grundlagen kannst, eh alles wieder umschreiben zu müssen, statt es gleich richtig zu lernen.

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 16:41
von koxbox
@BlackJack.

Die Tutorials finde ich immer sehr Trocken.
Ich bin da auch schon ein einiges durchgegangen.
Nur Theorie ohne direkt Anwenung ist mir zu Trocken.

Aber das wird schon... :?

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 17:26
von EyDu
koxbox hat geschrieben:Die Tutorials finde ich immer sehr Trocken.
Ich bin da auch schon ein einiges durchgegangen.
Nur Theorie ohne direkt Anwenung ist mir zu Trocken.
Hast du auch erst Schreiben gelernt und danach die Buchstaben? ;-) Ohne Theorie wirst du es nicht schaffen, manchmal muss man da eben durch.

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 18:01
von BlackJack
@koxbox: Tutorials durcharbeiten heisst doch das anzuwenden und auszuprobieren was da vermittelt wird. Das ist Praxis und keine reine Theorie.

Und man kann nun mal keine Anwendung schreiben wenn man die Grundlagen nicht kennt.

Re: ANFÄNGER: Zahlen extrahieren und vergleichen

Verfasst: Donnerstag 27. Februar 2014, 22:37
von koxbox
ja... ich geb euch da schon recht. Und klar werde ich mir auch die Grundlagen reinziehen.
Ich hab da einfach ein anderes Vorgehen. Jeder lernt auf seine Art.

Ich mag es einfach wenn dabei auch gleich was nützliches rauskommt das ich gebrauchen kann.
Und es nach und nach verbessere.

schau mer mal!