ช่วยบอกการออกจากลูปของ code Python หน่อยครับ

กระทู้คำถาม

อันนี้เป็นควิซแก้โจทย์ Python ครับโจทย์จะให้วัน เดือน ปี แรก (year1, month1, day1) และ วัน เดือน ปี สอง(year2, month2, day2)
โจทย์คือให้หาวันว่ามีกี่วันถ้าสมมติว่าให้ทุกเดือน = 30 วันทุกเดือนหาได้แล้ว Return Days ออกมาตามกรอบสีเหลืองในภาพ
ข้อนี้ผมนั่งแก้ 5 ชม. แก้ไม่ออกครับเลยต้องดูเฉลยพอดูเฉลยกลับไม่เข้าใจตรง กรอบสีแดงในภาพ
อันแรก ฟังก์ชั่น IsbeforeDate มันก็ไล่เงื่อนไขมาจนถึงตัวที่
if month1 == month2
return day1<day2
1.คือผมงงว่าตรงนี้สรุปมัน return ออกไปเป็นค่า True หรือ False
2.แล้วมันเบรคลูปได้เป๊ะได้ไงตามกรอบสีแเดงที่สองตรงเงื่อนไขใน while IsbeforeDate(year1, month1, day1, year2, month2, day2):
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่