Pfad auslesen und CallScript

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
walha2006
User
Beiträge: 15
Registriert: Sonntag 7. Februar 2010, 21:24

Hallo,
ich möchte gerne einem Datei lesen (Test.skr)und aus diesem datei den Ordner pfad nach CALLSCRIPT auslesen und aufrufen

mein Test.skr sieht so aus
CALLSCRIPT C:\Projekte\Skripts\Test1.skr
WAIT[10000]
CALLSCRIPT C:\SKRIPTS\Test2.skr
ich habe so probiert aber leider klappt das nicht:

Code: Alles auswählen

import sys
import re
import os



def getSkript(filename , pfad):
    skr = []
    datei = open(name,'r')
    line = datei.readlines
    for line in datei:
        skr.append(line)
    datei.close()
    
    return skr


##MAIN####
Test = getSkript('Test.skr','C:\Python26')
for line in Test:
    if (line.find('CALLSCRIPT') >= 0):
        attributes=re.findall(r"([^(CALLSCRIPT)].*)", line)
        pfad, filename = os.path.split(attributes)
        Test1=getSkript(filename , pfad)
        
können Sie mir helfen?
Zuletzt geändert von walha2006 am Mittwoch 17. März 2010, 14:46, insgesamt 1-mal geändert.
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

Also wenn du schon mit regulären Ausdrücken hantierst, dann kannst du das doch für die gesamte Aufgabenstellung verwenden, indem du re.findall() einsetzt. Du benötigst auch kein str.find, weil du das auch im reg. Ausdruck integrieren kannst.

Noch mal in Kurzfassung die Vorgehensweise:
- Dateiinhalt auslesen
- re.findall über den Inhalt
- alle neuen Skripte verarbeiten

Hinweis: Zeile 10 kann nicht funktionieren, da "name" nicht definiert ist. Bitte poste doch in Zukunft eine Fehlermeldung, wenn eine ausgegeben wird.
„Lieber von den Richtigen kritisiert als von den Falschen gelobt werden.“
Gerhard Kocher

http://ms4py.org/
walha2006
User
Beiträge: 15
Registriert: Sonntag 7. Februar 2010, 21:24

danke
aber wie kann ich dem filename ZB. 'Test1.skr' und dem
pfad'C:\Projekte\Skripts' hier parsen (jeder in eine variable speichern)
ich habe versucht mit os.path aber leider geht das nicht..... :?:
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Die getSkript-Funktion ist total ueberfluessig. Regular Expressiosn braucht man hier auch nicht unbedingt.

Code: Alles auswählen

with open("test.skr") as f:
    for line in f:
        if line.startswith("CALLSCRIPT"):
            path = line.split(" ", 1)[1].strip()
            print path
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
walha2006
User
Beiträge: 15
Registriert: Sonntag 7. Februar 2010, 21:24

danke ,
und wie bekomme ich dem Path und dem filename auseinander? :shock:
weil ich brauche das um dem Dateien(ZB.Test1.skr und Test2.skr) zu rufen und lesen :shock:
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Was hat denn an os.path.split nicht funktioniert?
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
walha2006
User
Beiträge: 15
Registriert: Sonntag 7. Februar 2010, 21:24

ja hat geklappt danke danke ,es ist einfach super hier :lol:
Antworten