亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

“打印”和“返回”之間的形式區別是什么?

“打印”和“返回”之間的形式區別是什么?

catspeake 2019-07-11 10:32:00
“打印”和“返回”之間的形式區別是什么?假設我定義了一個簡單的函數,它將顯示傳遞給它的整數:def funct1(param1):     print(param1)     return(param1)輸出將是相同的,但是我知道當return語句在函數中使用,輸出可以再次使用。否則,則為print語句無法使用。但我知道這不是正式的定義,有人能給我一個好的定義嗎?
查看完整描述

3 回答

?
慕碼人2483693

TA貢獻1860條經驗 獲得超9個贊

帶著print()的值將顯示給標準輸出。param1,同時return你會派param1打電話的人。

這兩種說法的含義非常不同,你不應該看到同樣的行為。張貼你的整個程序,它將更容易指出的差異,你。

編輯:正如其他人所指出的,如果您在一個交互式pythonshell中,您會看到同樣的效果(值是打印出來的),但這是因為shell計算表達式并打印它們的輸出。

在本例中,一個函數具有return語句作為return因此返回值被回顯。不要讓交互式的shell欺騙你?。?


查看完整回答
反對 回復 2019-07-11
?
DIEA

TA貢獻1820條經驗 獲得超3個贊

print(或print()如果您使用的是Python 3),則可以準確地打印關鍵字后面的任何內容。它還會做一些很好的事情,比如用一個空格自動連接多個值:

print 1, '2', 'three'# 1 2 three

不然的話print (print())從程序的角度來看,什么也不做。它不會以任何方式影響控制流,并且將在代碼塊中的下一個指令中恢復執行:

def foo():
    print 'hello'
    print 'again'
    print 'and again'

另一方面return(不是return())設計為立即中斷控制流并退出當前函數,并將指定的值返回給調用函數的調用者。它總是這么做的,就這樣。return它本身不會導致任何東西被打印到屏幕上。即使不指定返回值,也是隱式的None會被歸還。如果你跳過return總之,一個含蓄的return None仍然會在您的功能結束時發生:

def foo(y):
    print 'hello'
    return y + 1
    print 'this place in code will never get reached :('print foo(5)# hello# 6def bar():
    return # implicit return Noneprint bar() is None# Truedef baz(y):
    x = y * 2
    # implicit return Nonez = baz()print z is None# True

你看到的原因return打印到屏幕上的Ed值是因為您可能使用的是交互式Python shell,它會自動運行。printIt‘為了您自己的方便,有什么結果嗎?


查看完整回答
反對 回復 2019-07-11
  • 3 回答
  • 0 關注
  • 761 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號