Python条件演算子

1102 ワード

Pythonプログラム設計言語は、異なる構文処理条件式を使用します.
valueTrue if condition else valueFalse

この機能はPython 2.5以前のバージョンでは使用できません.Guido van Rossum(Pythonの最初の設計者および主要アーキテクチャ)は、C?X:Yのような機能がエラーになりやすいと考えてPythonに参加しなかったが、その後、C and [X] or [Y]に代わろうとするプログラマーが多く、完全に正しい方法ではないようだ.様々な問題に直面して、ギド・ファン・ロスムは最終的にX if C else Yの方法を採用した.links..
(C and[X]or[Y])非公式用法:
>>> 1 and 'z' or 'h'
'z'
>>> 0 and 'z' or 'h'
'h'
>>> a = ''
>>> b = 'h'
>>> 1 and a or b # wrong?
'h'
>>> (1 and [a] or [b])[0] # solusion
''
>>> 

テーマ:学習成績>=90点の学生はAで表し、60-89点の間はBで表し、60点以下はCでプログラムコードを表す.
# -*- coding: UTF-8 -*-
score = int(raw_input('input score:'))
# grade = 'A' if score>=90 else 'B' if score>=60 else 'C' #    
grade = score>=90 and 'A' or score>=60 and 'B' or 'C'
print '%d belongs to %s' % (score, grade)