2014年2月18日火曜日

Learn Python the Hard Way 27-28

Exercise 27: Memorizing Logic

The Truth Terms

and
or
not
!= (not equal)
== (equal)
>= (greater-than-equal)
<= (less-than-equal)
True
False

The Truth Tables

NOTTrue?
not FalseTrue
not TrueFalse
ORTrue?
True or FalseTrue
True or TrueTrue
False or TrueTrue
False or FalseFalse
ANDTrue?
True and FalseFalse
True and TrueTrue
False and TrueFalse
False and FalseFalse
NOT ORTrue?
not (True or False)False
not (True or True)False
not (False or True)False
not (False or False)True
NOT ANDTrue?
not (True and False)True
not (True and True)False
not (False and True)True
not (False and False)True
!=True?
1 != 0True
1 != 1False
0 != 1True
0 != 0False
==True?
1 == 0False
1 == 1True
0 == 1False
0 == 0True
Exercise 28: Boolean Practice

True and True
False and True
1 == 1 and 2 == 1
"test" == "test"
1 == 1 or 2 != 1
True and 1 == 1
False and 0 != 0
True or 1 == 1
"test" == "testing"
1 != 0 and 2 == 1
"test" != "testing"
"test" == 1
not (True and False)
not (1 == 1 and 0 != 1)
not (10 == 1 or 1000 == 1000)
not (1 != 10 or 3 == 4)
not ("testing" == "testing" and "Zed" == "Cool Guy")
1 == 1 and not ("testing" == 1 or 1 == 0)
"chunky" == "bacon" and not (3 == 4 or 3 == 3)
3 == 3 and not ("testing" == "testing" or "Python" == "Fun")

operator — 関数形式の標準演算子

演算子から関数への対応表

操作構文関数
加算a + badd(a, b)
結合seq1 + seq2concat(seq1, seq2)
包含テストobj in seqcontains(seq, obj)
除算a / bdiv(a, b) (__future__.divisionが無効な場合)
除算a / btruediv(a, b)(__future__.division が有効な場合)
除算a // bfloordiv(a, b)
論理積a & band_(a, b)
排他的論理和a ^ bxor(a, b)
ビット反転~ ainvert(a)
論理和a | bor_(a, b)
べき乗a ** bpow(a, b)
インデクス指定の代入obj[k] = vsetitem(obj, k, v)
インデクス指定の削除del obj[k]delitem(obj, k)
インデクス指定obj[k]getitem(obj, k)
左シフトa << blshift(a, b)
剰余a % bmod(a, b)
乗算a * bmul(a, b)
(算術)否- aneg(a)
(論理)否not anot_(a)
符号反転+ apos(a)
右シフトa >> brshift(a, b)
シーケンスの反復seq * irepeat(seq, i)
スライス指定の代入seq[i:j] = valuessetslice(seq, i, j, values)
スライス指定の削除del seq[i:j]delslice(seq, i, j)
スライス指定seq[i:j]getslice(seq, i, j)
文字列書式化s % objmod(s, obj)
減算a - bsub(a, b)
真値テストobjtruth(obj)
順序付けa < blt(a, b)
順序付けa <= ble(a, b)
等価性a == beq(a, b)
不等性a != bne(a, b)
順序付けa >= bge(a, b)
順序付けa > bgt(a, b)


過去ログ:

SF Python Hack Night / Learn Python the Hard Way 1-6
Learn Python the Hard Way 続き 7-10
Learn Python the Hard Way 続き 11-15
PyLadies South Bay and Learn Python the Hard Way 続き 16-18
Learn Python the Hard Way 19-23
Learn Python the Hard Way 24-26

Disclaimer このブログは山崎富美の個人的なものです。ここで述べられていることは私の個人的な意見に基づくものであり、私の雇用者には一切の関係はありません。