iT邦幫忙

0

python中,print不能打印出函數嗎?

  • 分享至 

  • xImage
def add(a,b):
    print(a+b)
print(add(3,4))

大家好,小弟剛接觸python,想請問以上述程式碼會運行出7與none值,這是因為裡面add(3,4)先運行出7值,後續print因為無法打印出add(3,4)這個函數,所以會同時跑出7與none值嗎?

froce iT邦大師 1 級 ‧ 2022-04-29 14:34:50 檢舉
因為你add這函數沒有傳回結果(return),所以第二次會印出None
Zero皇 iT邦研究生 3 級 ‧ 2022-04-29 20:11:33 檢舉
對,add(3,4)要有回傳值才可以被print函式接收,當作要印出來的東西,否則print看到他發現他沒有回傳,就視為沒有東西(None)
yun1231 iT邦新手 3 級 ‧ 2022-04-29 22:45:41 檢舉
可以打印阿,只是結果會是None XD
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
frogsoul
iT邦研究生 5 級 ‧ 2022-05-01 02:37:36
最佳解答

這麼說好了...

  1. print(函式),印出的會是函式的return值
  2. 在python中,所有的函式都一定會有return值
  3. 如果你函式直接讓他跑到完,那麼預設就是retrun None
  4. 如果你函式直接呼叫'return'並不接任何參數在後面,那也是相當於return None
  5. 以你的範例,函式add的最後應該要以'return a+b'做結尾

我要發表回答

立即登入回答