TypeError: kann Objekte 'str' und 'list' in E-Mails nicht verketten

7

Ich arbeite daran, eine E-Mail in Python zu senden. Im Moment möchte ich Einträge aus einer Liste per E-Mail senden, aber ich habe einen Fehler gefunden, der sagt "TypeError: kann 'str' und 'list' Objekte nicht verketten" und ich habe keine Idee, es zu debuggen. Das Folgende ist der Code, den ich habe. Ich bin noch neu in dieser Sprache (3 Wochen), also habe ich ein bisschen Hintergrund.

%Vor%     
Enzo Vidal 23.10.2014, 05:36
quelle

2 Antworten

22

Das Problem ist mit msg = header + x . Sie versuchen, den Operator + auf eine Zeichenfolge und eine Liste anzuwenden.

Ich bin mir nicht ganz sicher, wie x angezeigt werden soll, aber wenn Sie etwas wie "[1, 2, 3]" möchten, benötigen Sie:

%Vor%

Oder Sie könnten tun,

%Vor%     
David Sanders 23.10.2014, 05:43
quelle
2

Problem ist, dass in der Codezeile msg = header + x der Name header eine Zeichenkette ist und x eine Liste ist, so dass diese beiden nicht mit + operator verkettet werden können. Die Lösung besteht darin, x in eine Zeichenfolge zu konvertieren. Eine Möglichkeit besteht darin, Elemente aus list zu extrahieren, sie in str und .join() zusammen zu konvertieren. Also sollten Sie die Codezeile ersetzen:

%Vor%

von:

%Vor%     
Irshad Bhat 23.10.2014 05:43
quelle

Tags und Links