0

私はPythonがまったく初めてで、もし与えられたら興味があります:

ENROLLMENT_STATUS = (
                         (1, 'Enrolled'),
                         (2, 'Promoted'),
                         (3, 'Dropped'),
                         (4, 'Failed'),
                     )

次のようなループを使用せずに、整数 1..4 を対応する str に変換できます。

for i in Enrollment.ENROLLMENT_STATUS:
    if i[0] == self.enrollment_status:
        status = i[1]
        break

みんなの助けに感謝します。

よろしく、 チャド

4

2 に答える 2

3

このように辞書に変換できます

try:
    {k: v for k, v in ENROLLMENT_STATUS}[self.enrollment_status]
except ValueError:
    raise # or whatever

またはこのように:

try:
    dict(ENROLLMENT_STATUS)[self.enrollment_status]
except ValueError:
    raise # or whatever
于 2013-04-21T05:16:19.073 に答える
3

get_FOO_display次のようにメソッドを使用できます。

self.get_enrollment_status_display()

Enrolledステータスが などの場合は出力さ1れます。

于 2013-04-21T05:08:03.397 に答える