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

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

Python中檢查字符序數的不等式

Python中檢查字符序數的不等式

收到一只叮咚 2022-06-14 15:27:59
33 <= cp <= 47寫類似vs的東西有區別cp >= 33 and cp <= 47嗎?更具體地說,如果有一個函數可以:def _is_punctuation(char):  """Checks whether `chars` is a punctuation character."""  cp = ord(char)  if ((cp >= 33 and cp <= 47) or (cp >= 58 and cp <= 64) or      (cp >= 91 and cp <= 96) or (cp >= 123 and cp <= 126)):    return True  else:    return False是否與以下內容相同:def is_punctuation(char):    """Checks whether `chars` is a punctuation character."""    # Treat all non-letter/number ASCII as punctuation.    # Characters such as "^", "$", and "`" are not in the Unicode    # punctuation class but treat them as punctuation anyways, for consistency.    cp = ord(char)    if (33 <= cp <= 47) or (58 <= cp <= 64) or (91 <= cp <= 96) or (123 <= cp <= 126):        return True    return False是否有理由更喜歡_is_punctuation()或is_punctuation()反之亦然?一個在計算上會比另一個更快嗎?如果是這樣,我們如何驗證呢?使用dis.dis?
查看完整描述

1 回答

?
嗶嗶one

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

不,它們在語義上是相同的。您也可以返回條件而不是使用 if 子句,因為它無論如何都會評估為布爾值:

return (33 <= cp <= 47) or (58 <= cp <= 64) or (91 <= cp <= 96) or (123 <= cp <= 126)

他們(谷歌 AI 工程師)可能不知道鏈式比較,或者他們希望它表現得更好一些


查看完整回答
反對 回復 2022-06-14
  • 1 回答
  • 0 關注
  • 131 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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