0

Pythonaでは次のとおりです。

a = "XPZC"

なぜFalsePythonでフォローしているのですか?

(str(a)[:2] == ("YP" or "XP"))
4

2 に答える 2

9

これは、 が に("YP" or "XP")解決されるかどうか"YP"を返すよう求めているためです。"YP""XP"True

この場合、「or」はショート サーキットです ( "YP"is notFalseであるため、"XP"は評価されません)。False 以外の値を返します"YP"..."YP"

またa[:2]、 に等しいXPです。str()また、 は文字列であるため、呼び出す必要はありませんa

>>> a = "XPZC"
>>> a[:2]
'XP'
>>> "YP" or "XP"
'YP'

おそらく使用したいin

>>> a[:2] in ("YP", "XP")
True

または、次を使用して 2 つの条件を確認しorます。

>>> s = a[:2]
>>> s == "YP" or s == "XP"
True
于 2013-09-25T22:23:45.563 に答える
1
(str(a)[:2] in ["YP", "XP"])

"YP" or "XP"戻り値'YP'

于 2013-09-25T22:23:33.250 に答える