it-swarm.com.de

So konvertieren Sie eine Zeichenfolgenliste in eine Ganzzahl in Python

In meinem Python-Skript habe ich:

user = nuke.getInput("Frames Turned On")
userLst = [user]
print userLst

Ergebnis:

['12,33,223']

Ich habe mich gefragt, wie ich den ' aus der Liste entfernen oder ihn irgendwie in int umwandeln würde.

10
Nick

Verwenden Sie split(), um nach Komma zu trennen, und int(), um nach Ganzzahl zu konvertieren:

user_lst = map(int, user.split(","))
19
Sven Marnach

Es ist kein ' in der Liste zu entfernen. Wenn Sie eine Liste drucken, zeigt Python, da sie keine direkte Zeichenfolgendarstellung hat, ihre repr - eine Zeichenfolge, die ihre Struktur anzeigt. Sie haben eine Liste mit einem Element, der Zeichenfolge 12,33,223; das ist, was [user] macht.

Sie möchten wahrscheinlich die Zeichenfolge durch Kommas teilen , wie folgt:

user_list = user_input.split(',')

Wenn Sie möchten, dass diese ints sind, können Sie ein Listenverständnis verwenden :

user_list = [int(number) for number in user_input.split(',')]
9
Eevee
[int(s) for s in user.split(",")]

Ich habe keine Ahnung, warum Sie die separate Variable userLst definiert haben, bei der es sich um eine Liste mit einem Element handelt.

1
Daniel Roseman
>>> ast.literal_eval('12,33,223')
(12, 33, 223)