【问题标题】: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) == "&lt;class 'int'&gt;":

    试试这个:

    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】:

        &lt;class int&gt;int 类型的 toString 方法的输出。你想要的其实是:

        if type(i) is int:
          ...
        

        【讨论】:

          猜你喜欢
          • 2020-02-27
          • 2019-05-06
          • 2016-10-20
          • 2020-04-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多