読者です 読者をやめる 読者になる 読者になる

へっぽこびんぼう野郎のnewbie日記

けろけーろ(´・ω・`)!

whileとforとifとnotとandとorが混ざってるとわけわからなくなる件について

PC Python

found = False

while x and not found:

     if match(x[0]):

         print 'Ni'

         found = True

    else:

        x = x[1:]

if not found:

    print 'not found'

 このif not foundで結構考えた。

found = Falseだから、not foundはTrue。

xがtrueで、かつ、not foundはもちろんTrueだから、下のブロックに移動して、

if match(x[0])がTrue のとき、found = True になって、

not found = Falseだから、if not found:下のブロックは実行されない。

文章にするとわけわかんないな。

 

こういう論理式って、慣れの問題なんだろうかって思う。

人間の直感って、論理演算にはものすごく適していないらしいから、

こういう、何個も何個も論理演算をする仕組みは、体得するしかないのかな。

頭パンクするかと思った。