我需要['1', '2', '3']
成为[1, 2, 3]
这是我的实际代码:
def chain_a_list_int(p_chain :str):
tab_chain=[] # [str]
tab_int=[] # [int] (list to return)
tab_chain = p_chain.split(",")
tab_chain = [int(i) for i in tab_chain]
tab_int.append(tab_chain)
return tab_int
并将其返回使用它:
chain_a_list_int(input("enter the number to conserve: "))
但是当我将其打印出函数时,它会给我这个错误:
<function chain_a_list_int at 0x000000000349FEA0>
当我尝试打印时,我使用它:
print(chaine_a_liste_entier)
当我在功能中打印tab_int
时,它的效果非常好,但是当我不在它的时候就不行了......
print(tab_int)
结果...
[1, 2, 3]
答案 0 :(得分:1)
这不是错误,而是表示Python认为您没有要求它致电chain_a_list_int
。对代码的最小调整是:
the_list = chain_a_list_int(input("enter the number to conserve: "))
print(the_list)
或
print(chain_a_list_int(input("enter the number to conserve: ")))
对函数chain_a_list_int
的名称的引用,在其后面没有(
,实际上并不会导致函数的代码运行。这种区别将在以后对您有用 - 现在,确保在您键入函数名称时,在该名称后面加上带括号的表达式。 (如果@ForceBru发布了答案,你会看到一个反例:)。
答案 1 :(得分:0)
您需要调用该函数来打印其输出,即print(chaine_a_liste_entier('1,3,5,6'))
。