【问题标题】:How can I append elements to different arrays via a for-loop?如何通过 for 循环将元素附加到不同的数组?
【发布时间】:2021-11-07 14:31:48
【问题描述】:
我有这段代码:
Lista_enteros = []
Lista_texto = []
def recibir(*args):
argumentos = args
return argumentos
filtrar_args = recibir("Hola mundo", 6)
for i in filtrar_args:
if type(i) == "<class 'int'>":
Lista_enteros.append(i)
else:
Lista_texto.append(i)
print (Lista_enteros)
print(Lista_texto)
我希望有这样的输出:
[6]
['Hola mundo']
但是当我执行代码时,我会打印出来:
[]
['Hola mundo', 6]
我该如何解决?
【问题讨论】:
标签:
python
arrays
for-loop
【解决方案1】:
使用此代码:if isinstance(i, int) 而不是:if type(i) == "<class 'int'>":
试试这个:
Lista_enteros = []
Lista_texto = []
def recibir(*args):
argumentos = args
return argumentos
filtrar_args = recibir("Hola mundo", 6)
for i in filtrar_args:
if isinstance(i, int):
Lista_enteros.append(i)
else:
Lista_texto.append(i)
print (Lista_enteros)
print(Lista_texto)
输出:
[6]
['Hola mundo']
【解决方案2】:
你应该改变这一行 -
如果 type(i) == ""
到
如果类型(i) == int:
【解决方案3】:
<class int> 是 int 类型的 toString 方法的输出。你想要的其实是:
if type(i) is int:
...