2016-07-21 3 views
1

ich eine Funktion haben, eine Liste von Werten zurückzukehren, indem Ergebnis verwiesen:Wie das Zitat und Halter von Listenwert entfernen

def populate(*args): 
    i=1 
    result = [] 
    for arg in args: 
     arg = str(cols[i].get_text()) 
     i+=1 
     result.append(arg) 
    return result 

Und ich möchte die Werte von Ergebnis zu verschiedenen Variablen zuweisen:

a, b, c = populate(result) 

Gesetzt result = ['LINZ','WLG Cisco BYOL 2','32']

Allerdings habe ich die folgende Ausgabe für a, b, c:

**LINZ** 

**['WLG Cisco BYOL 2']** 

**32** 

Wie [' '] zu entfernen und es als Zeichenfolge zuweisen?

Vielen Dank für Ihre Hilfe!

+0

Können Sie zeigen, was der Inhalt Ihrer 'cols' Variable – gabra

+0

In Ihrem Code ist die Eingabe "result", aber es gibt keinen Verweis darauf. Ich bin pullzed für deinen Code. –

+0

cols [i] ist nur eine Liste, die Elemente von HTML-Tags speichert. – Yan

Antwort

1

Wenn Sie nur jedes Element in der Liste zu Zeichenfolge konvertieren wollen, dann könnte man es einfacher machen:

In [12]: a, b, c= [str(item) for item in result] 

In [13]: a, b, c 
Out[13]: ('LINZ', 'WLG Cisco BYOL 2', '32') 

In [14]: a 
Out[14]: 'LINZ' 

In [15]: b 
Out[15]: 'WLG Cisco BYOL 2' 

In [16]: c 
Out[16]: '32' 

Die Funktion könnte wie folgt aussehen (minimal Code ändern:

def populate(*args): 
    result = [] 
    for arg in args: 
     arg = str(arg) 
     result.append(arg) 
    return result 

, die nur gleichwertig ist:

[str(item) for item in result] 
+0

Vielen Dank! Das funktioniert! – Yan

+0

Ich habe gerade ein anderes Problem, wenn die Funktion nur und ordnet ein Argument Wert, es immer noch den [‘‚] hat: b = bevölkern (Ergebnis) Druck b [‘WLG Cisco BYOL 2' ] versucht den Code in b = str (populate (result)) ändern und das [''] immer noch nicht loswerden. warum ist das? Danke vielmals! – Yan

Verwandte Themen