]> Panopticon :: Python :: 初めてのPython(3) 14章

<< 初めてのPython(2) 12章、13章 | main | もっと式を入力してみる >>

初めてのPython(3) 14章

初めてのPython 第2版

・ステートメントを式に書き直す

>>> (((True and [0]) or (True and [1])) or [2]) [0]
0
>>> (((False and [0]) or (True and [1])) or [2]) [0]
1
>>> (((False and [0]) or (False and [1])) or [2]) [0]
2

つまりこんな書き方もできると。

def teststate(x,y):
	return ((x and ((y and ['11']) or ['10'])) or ((y and ['01']) or ['00'])) [0]
>>> print teststate(True, True)
11
>>> print teststate(True, False)
10
>>> print teststate(False, True)
01
>>> print teststate(False, False)
00
def exor(x, y):
	return (((x==y) and [False]) or [True]) [0]
>>> print exor(True, True)
False
>>> print exor(True, False)
True
>>> print exor(False, True)
True
>>> print exor(False, False)
False

まあ

def exor(x, y):
	return x!=y

これでいいんだけどね……。

・ディクショナリの更新

for i in D.keys():
×	CD={i : D[i]}
〇	CD[i]=D[i]

ディクショナリに存在しないインデックスを指定すると値が代入される、と。

・リスト内包表記

>>> [x * x for x in range(10)]
[0, 1, 4, 9, 25, 36, 49, 64, 81]
カテゴリ

Trackback URI

http://www.panopticon.jp/mt/mt-tb.cgi/14

Trackbacks(0)

コメントする