paid_students=[]
for students in enrollments:
if students['days_to_cancel']==None or students['days_to_cancel']>7:
paid_students.append(students)
print len(paid_students)
出力に追加なっています。登録の多くの行が幅が広い['days_to_cancel']
値を持っていても、すべての行がpaid_students
list
に追加されるのはなぜですか。これは私のために就学はなぜ、すべてのデータがリスト
{u'account_key': u'448',
u'cancel_date': u'2014-11-10',
u'days_to_cancel': u'5',
u'is_canceled': u'True',
u'is_udacity': u'True',
u'join_date': u'2014-11-05',
u'status': u'canceled'}
{u'account_key': u'448',
u'cancel_date': u'2015-01-27',
u'days_to_cancel': u'0',
u'is_canceled': u'True',
u'is_udacity': u'True',
u'join_date': u'2015-01-27',
u'status': u'canceled'}
ソース-Udacity
コードで "> 7"をチェックしても問題ありませんか? –
@AshKetchumはい「days_to_cancel」が7より大きい必要があるという質問で尋ねられました。 –
*文字列*を整数と比較しています。 'u ''> 7'はPython 2では常に真です。なぜなら、数値は他のオブジェクト型の前に常に順序付けされているからです。値を整数* first *に変換します。 –