2017-07-03 6 views
0

私はUdacityでデータ科学を学んでいます。私は次のPythonコードについて討議しています。Pythonで2つの日付の違いをチェックする関数

私たちは、その後、我々は、引数

def within_one_week(join_date, engagement_date): 
    time_delta = engagement_date - join_date 
    return time_delta.days < 7 

は今、この機能は明らかに引数として二つの日付を取るように2つの日付をとり、以下の機能を持っている辞書

paid_students = {} 
for enrollment in non_udacity_enrollments: 
    if not enrollment['is_canceled'] or enrollment['days_to_cancel'] > 7 : 
     account_key=enrollment['account_key'] 
     enrollment_date=enrollment['join_date'] 
     paid_students[account_key] = enrollment_date 

を持っています。

上記の関数(within_one_week(join_date, engagement_date))を使用しているところで次のコードをチェックしてください。ただし、引数の1つが私のようなものではないようです。

paid_engagement_in_first_week = [] 

for engagement in non_udacity_engagement: 
    student_id = engagement['account_key'] 
    if student_id in paid_students: 
     if within_one_week(paid_students[student_id], engagement['utc_date']): 
      paid_engagement_in_first_week.append(engagement) 

引数のいずれかがpaid_students[student_id]ですなぜあなたは私には、日付のように思わない、教えてもらえますか?

答えて

1

paid_studentsは、をキーとし、enrollment['join_date']を値として辞書です。

したがって、paid_student[student_id]を実行すると、enrollment['join_date']から取得された特定のキー(student_id)の値が実際に取得されます。

+0

プラスワン - あなたはそれに私を打つので、多くの新規ユーザーが正しい – jross

+0

として答えを選択する方法を見つけ出すことはありませんが、それは助けて嬉しい、 – Jonelya

+0

こんにちは@Jonelya今、すべてが明らか洙あまりLufexlos.Its、ありがとうございました。 :)チェックマークをクリックして[回答を受け入れる](https://meta.stackexchange.com/q/5234/179419)を検討してください。これは、あなたが解決策を見つけ出し、回答者とあなた自身の両方に評判を与えていることを広範なコミュニティに示します。 **頭の中で、これを行う義務はありません。** – Lafexlos

関連する問題