python :: python과 C의 삼항연산

2010/06/24 16:27

FILTER = ''.join ([(len (repr (chr (x))) == 3) and chr (x) or '.' \
for x in range (256)])

for c in xrange (0, self.__len, 16):
chars = src[c:c+16]
self.__ascii.append (''.join(["%s" % (FILTER[ord (x)]) for x in chars]))


위 코드에서 첫 줄의 FILTER 를 구하는 코드가 삼항연산에 해당됩니다. 대괄호 사이의 코드를 보면,

A and B or C

구문을 볼 수 있습니다. 이것을 C 언어의 삼항연산과 비교해서 보면,

A ? B : C

가 되지요. 즉 A 가 참이면, B 를 아니면 C 를 연산하라는 의미입니다.
크리에이티브 커먼즈 라이센스
Creative Commons License

6l4ck3y3 0x08 과거의 글모음/내 머리 속의 노트 ,

Trackback Address:http://hisjournal.net/blog/trackback/327