Dự án: gửi thành viên emails nhắc đến hạn sử dụng Python (phần 3)

Dự án: gửi thành viên emails nhắc đến hạn sử dụng Python (tiếp tục)

Bước 2: Tìm ra tất cả thành viên chưa trả tiền
Một khi bạn đã quyết định số cột của tháng gần nhất (lưu trong lastCol), bạn có thể lặp qua tất cả các dòng sau
dòng đầu tiên (cái có các headers cột) để xem các thành viên nào có text paid trong ô cho các tới hạn tháng đó.
Nếu thành viên chưa trả, bạn có thể nhặt ra tên và địa chỉ email của thành viên từ cột 1 và 2 tương ứng. Thông tin
này sẽ đi vào unpaidMembers dictionary, cái sẽ theo dõi tất cả thành viên người chưa trả tiền trong tháng gần nhất.
Thêm code sau vào sendDuesReminder.py.

#! python3
# sendDuesReminders.py – Sends emails based on payment status in spreadsheet.
–snip–
# Check each member’s payment status.
unpaidMembers = {}
(1) for r in range(2, sheet.max_row + 1):

(2) payment = sheet.cell(row=r, column=lastCol).value
if payment != ‘paid’:

(3) name = sheet.cell(row=r, column=1).value
(4) email = sheet.cell(row=r, column=2).value
(5) unpaidMembers[name] = email

Code này thiết lập một dictionary rỗng unpaidMembers, và sau đó lặp qua tất cả các dòng sau cái đầu tiên (1). Cho
mỗi dòng, giá trị trong cột gần nhất được lưu trong payment (2). Nếu payment không bằng paid, thì giá trị của cột
đầu tiên được lưu trong name (3), giá trị của cột thứ hai được lưu trong email (4), và name và email được thêm vào
unpaidMembers (5).

Chia sẻ