我不明白我的 Python 程式輸出中的“無”來自哪里。誰能幫我?
程式
def printColumn(x):
if type(x) is not list:
x = list(range(0,5))
for i in range(len(x)):
print(x[i])
x = [8,24,48,2,16]
print(printColumn(x))
輸出
8
24
48
2
16
None
先感謝您
我只是不明白為什么它不起作用
uj5u.com熱心網友回復:
該函式列印值 8 到 16。
但是你的主級代碼有print(printColumn(x)),這意味著函式的回傳值也會被列印出來。而且由于該函式沒有return陳述句,所以None默認回傳。
如果您只想呼叫該函式而不列印其結果,則只需使用printColumn(x)而不使用外部print()呼叫。
uj5u.com熱心網友回復:
你應該像這樣呼叫沒有print()的函式
:printColumn(x)
NOTprint(printColumn(x))
uj5u.com熱心網友回復:
您處理此問題的方式取決于您希望列印的位置。
如果你想列印printColumn()的回傳值,那么你可以這樣做:
def printColumn(x=None):
return x if isinstance(x, list) else range(5)
x = [8,24,48,2,16]
print(*printColumn(x), sep='\n')
print()
print(*printColumn(), sep='\n')
輸出:
8
24
48
2
16
0
1
2
3
4
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/528647.html
標籤:Python列表
上一篇:如何列出資料框的特定變數?
下一篇:如何更改資料框串列的列名稱?
