2017-12-24 2 views
-4

obwohl externe Textdatei Zeile Looping Wenn ich eine Textdatei, die wie eine x Anzahl der Zeilen enthält:Erstellen vaiables von Zeile

hostINFO = ['hostTYPE', 'hostOS', 'hostENV', 'hostNAME', 'hostIP', 'dbUNAME', 'dbPWD', 'dbPORT', 'orgNAME', 'nrdsTOKEN'] 

Wie würde ich ein Python-Skript erstellen, das würde:

  1. importieren eine Zeile als Variablenliste, so dass ich es als host [0] oder host [1] usw. beziehen ....
  2. führen sie das Skript für die Variablen
  3. wenn an den Host zurück abgeschlossen .t xt file und nimm die nächste Zeile und fahre fort bis keine mehr liniert ist.

Update ....

i mein hosts.txt Dateiformat geändert Komma begrenzt sein:

hostTYPE,hostOS,hostENV,hostNAME,hostIP,dbUNAME,dbPWD,dbPORT,orgNAME,nrdsTOKEN` 

deploy.py

with open("hosts.txt") as f: 
for line in f: 
    hostINFO = line.strip().split(',') 
+0

Sind die Elemente in '' hostInfo'' die Zeilen der Datei oder ist jede Zeile in der Datei '' hostINFO = [....] ''? –

+0

es ist jede Zeile der Datei – rainman

+0

Darf ich fragen, was Ihr Endziel ist, d.h. was Sie erreichen möchten? –

Antwort

1

Beachten Sie, dass evaluating or executing Code aus Dateien ist ein serious vulnerability, und Sie sollten wirklich sicher sein, dass Sie die Kontrolle über das haben, was in der Datei ist.

Sie können Textdatei Inhalt in Variablen mit so etwas wie konvertieren:

with open('myfile.txt') as f: 
    for line in f.readline(): 
     exec(line) 
     first_element = hostINFO[0] # hostTYPE 
     second_element = hostINFO[1] # hostOS 
     # ... 

Siehe auch Why should exec() and eval() be avoided?

0

Warum sind Sie nicht einige regex Rezept:

import re 
pattern='\w+' 

with open('hosts.txt','r') as f: 
    for i in f: 
     hostINFO=re.findall(pattern,i) 
     print(hostINFO) 
     print(hostINFO[0]) 
     print(hostINFO[1]) 
     #after exec complete it goes for next_line in file 

Ausgabe:

['hostINFO', 'hostTYPE', 'hostOS', 'hostENV', 'hostNAME', 'hostIP', 'dbUNAME', 'dbPWD', 'dbPORT', 'orgNAME', 'nrdsTOKEN'] 
hostINFO 
hostTYPE 
Verwandte Themen