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

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

當我從函數返回一個字符串時,它有逗號嗎?

當我從函數返回一個字符串時,它有逗號嗎?

狐的傳說 2022-05-24 16:33:26
我寫了一個函數來返回一個條件為假的字符串,但是每次它返回它時,字符串中都有逗號。我不知道為什么。key = 0test_dictionary = {1: 'a', 2: 'b', 3: 'c', 4: 'd'} def show_value(a, b):    for item in b:        if item == a:            return(b[a])    if key == 0:        return(a, str('is not a valid key'))
查看完整描述

3 回答

?
暮色呼如

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

跑步show_value(5, test_dictionary)讓我著迷(5, 'is not a valid key')。哪個沒有在您的字符串中添加逗號。如果您想要一個看起來像句子的字符串,請嘗試:


def show_value(a, b):


    for item in b:


        if item == a:



            return(b[a])


    if key == 0:


        return "{} is not a valid key".format(a)

如果您想真正花哨,可以使用:


key = 0

test_dictionary = {1: 'a', 2: 'b', 3: 'c', 4: 'd'} 

def show_value(a, b):

    return b.get(5, "{} is not a valid key".format(a))


查看完整回答
反對 回復 2022-05-24
?
守著一只汪

TA貢獻1872條經驗 獲得超4個贊

問題是您返回的是元組,(a, "is not a valid key")而不是字符串。假設您使用的是 Python 3.6+,您可以使用 f-string:

return f'{a} is not a valid key'

正如@MasonCaiby 所建議的,您可以使用get字典的方法在沒有與鍵關聯的值時返回一個值,并且還可以組合 f 字符串:

return b.get(5, f"{a} is not a valid key")


查看完整回答
反對 回復 2022-05-24
?
收到一只叮咚

TA貢獻1821條經驗 獲得超5個贊

return(a, "is not a valid key")返回一個元組。

相反,做return(str(a) + " is not a valid key")

編輯:其他答案很有趣,我會在這里總結一下。

首先,在字符串中插入變量的 Pythonic 方法是 '{} is not a valid key'.format(a).

從 3.6 開始,您可以使用 "f" 字符串,它允許更清晰的插入 : f"{a} is not a valid key"。

最后,您可以用屬性替換您的答案dict.get(key,message_to_display_if_key_not_found),這正是您想要的。您甚至可以拋出異常消息:最終代碼將是:

return b.get(a, f"{a} is not a valid key")


查看完整回答
反對 回復 2022-05-24
  • 3 回答
  • 0 關注
  • 129 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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