我有這樣一段代碼:
Lista_enteros = [] 。
Lista_texto = []
def recibir(*args)。
argumentos = args
回傳 argumentos
filtrar_args = recibir("Hola mundo"/span>, 6)
for i in filtrar_args:
if type(i) == "<class 'int'>"/span>:
Lista_enteros.append(i)
else:
Lista_texto.append(i)
print (Lista_enteros)
print(Lista_texto)
我期望有這樣的輸出:
[6]
['Hola mundo']
但是當我執行這段代碼時,我得到的是這樣的列印結果:
[] 。
['Hola mundo', 6]
我怎樣才能解決這個問題?
uj5u.com熱心網友回復:
使用這段代碼:if isinstance(i, int)而不是:if type(i) == "<class 'int'>":
試試這個:
Lista_enteros = [] 。
Lista_texto = []
def recibir(*args)。
argumentos = args
回傳 argumentos
filtrar_args = recibir("Hola mundo"/span>, 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']
uj5u.com熱心網友回復:
你應該改變這一行 -
如果type(i) =="<class 'int'>"改為
如果type(i) == int:
uj5u.com熱心網友回復:
<class int>是型別int的toString方法的輸出。你想要的實際上是:
if type(i) is int:
...
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/312364.html
標籤:
