2017-12-06 2 views
0

Dies ist mein erster Beitrag, also bitte sei sanft, ich versuche, zwei Textdateien aus einigen Benutzereingaben zu schreiben, die Datei "Hostname - VLAN_config" ist in Ordnung, ich verwende diese Datei an anderer Stelle in meinem Code , was ich aber brauche, ist eine andere Datei (in diesem Fall "hostname - Trunk_config", die in einer bestimmten Weise formatiert wird, um sie für einen anderen Teil meines Codes zu verwenden.Python Ausgabedatei Formatierung - Text

Der folgende Code erzeugt eine Datei, die aussieht dies; “, 1, 2, 3"

, aber ich brauche es eine Textdatei zu erzeugen, die wie folgt aussieht; 1, 2, 3

print ('VLANS') 
print('-----------------------------------------------') 
print(' ') 
condition = True 
while (condition == True): 
    vlan = raw_input('Specify a VLAN id: ') 
    name = raw_input('What name for this VLAN: ') 
    print(' ') 
    with open(hostname + ' - VLAN_config', "ab") as f: 
     f.write('vlan ' + vlan) 
     f.write('\n') 
     f.write('name ' + name) 
     f.write('\n') 
    with open(hostname + ' - Trunk_config', "ab") as f: 
     f.write(', ' + vlan) 
    test = raw_input('Would you like to add another? [Y] ') 
    if test == (''): 
     condition = True 
    elif test == ('n'): 
     condition = False 
    else: 
     test = raw_input('Invalid input, more?') 
     if test == ('y'): 
      condition = True 
     elif test == ('n'): 
      condition = False 

jede Hilfe wird sehr geschätzt!

+0

Sind Sie mit dem führenden Komma unzufrieden oder erhalten Sie Strings und möchten stattdessen eine Zahlenfolge? – Gary02127

+0

Die Funktion, für die ich den Text verwenden möchte, erlaubt nicht das führende "," oder ein abschließendes Zeichen. –

+0

Wie wird der Text verarbeitet, um den führenden oder nachfolgenden Leerraum und die Kommas zu entfernen? Sie können etwas wie 'str1.strip (',')' aufrufen, bevor Sie die Zeichenfolge in die Funktion übergeben. lstrip() entfernt führende Zeichen und rstrip() entfernt nachfolgende Zeichen. – Gary02127

Antwort

0

Also das einzige Problem ist das erste Komma? Warum fügen Sie keinen Test hinzu, um zu prüfen, ob Sie den ersten Wert schreiben?

Andere Lösung: Schreiben Sie ', ' nur, nachdem der Benutzer sagte, dass sie eine weitere Eingabe hinzufügen möchten.

+0

Perfekt, funktioniert wie ein Charme! –