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

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

返回函數的輸出與打印函數有什么不同?

返回函數的輸出與打印函數有什么不同?

LEATH 2019-06-15 13:44:42
返回函數的輸出與打印函數有什么不同?在我以前的問題安德魯·賈菲(Andrew Jaffe)寫道:除了所有其他提示和提示之外,我認為您缺少一些關鍵的東西:您的函數實際上需要返回一些內容。當你創造autoparts()或splittext(),其思想是,這將是一個函數,您可以調用,它可以(而且應該)返回一些東西。一旦計算出希望函數具有的輸出,則需要將其放入return聲明。def autoparts():     parts_dict = {}     list_of_parts = open('list_of_parts.txt', 'r')     for line in list_of_parts:         k, v = line.split()         parts_dict[k] = v    print(parts_dict)>>> autoparts(){'part A': 1, 'part B': 2, ...}此函數創建字典,但不返回某些內容。但是,因為我添加了print,則在運行該函數時顯示該函數的輸出。.之間的區別是什么?return做某事print開它?
查看完整描述

3 回答

?
桃花長相依

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

print語句將向用戶輸出一個對象。返回語句將允許將字典分配給變量。一旦函數完成.

>>> def foo():...     print "Hello, world!"... >>> a = foo()Hello, world!>>> a>>> def foo():...     return "Hello, world!"... 
>>> a = foo()>>> a'Hello, world!'

或者在返回字典時:

>>> def foo():...     print {'a' : 1, 'b' : 2}... >>> a = foo(){'a': 1, 'b': 2}>>> a>>> def foo():...     return {'a' : 1, 'b' : 2}... 
>>> a = foo()>>> a{'a': 1, 'b': 2}

(在執行后不輸出任何語句的語句意味著最后一條語句返回None)


查看完整回答
反對 回復 2019-06-15
?
慕碼人8056858

TA貢獻1803條經驗 獲得超6個贊

我認為您很困惑,因為您是從REPL運行的,REPL會自動打印出在調用函數時返回的值。在這種情況下,無論您有一個創建值、打印它并丟棄它的函數,還是有一個函數創建一個值并返回它,讓REPL打印它,都會得到相同的輸出。

然而,這些并不是一回事,你會意識到,當你用另一種功能調用自動操作時,它想要做一些具有自動測試所創造的價值的事情。


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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