18
loading...
This website collects cookies to deliver better user experience
class SecretSanta:
def __init__(self, name, email, black_list = None):
""" initialize class variables """
self.name = name
self.email = email
self.recipient = None # will be allocated later
self.black_list = list()
self.black_list.append(self.name) # adding own name
if black_list:
self.black_list += black_list.split('|')
def __repr__(self):
""" override print method (optional) """
# return string to print
def contact_secret_santa(self):
""" contact recipient """
# use SendGrid example here
{
"csv_file": "data/secret_santas_list.csv",
"email_file": "data/email.html",
"attempts_limit": 100,
"sg_sender_email": "[email protected]",
"sg_api_key": "your_api_key"
}
import json
with open("data/settings.json", 'r') as json_file:
SETTINGS = json.load(json_file)
print(SETTINGS['csv_file'])
# output: 'data/secret_santas_list.csv'
from pandas import read_csv
df = read_csv(csv_file_path).fillna('')
secret_santas = []
for i in range(len(df)):
new_name = str(df['Name'][i])
new_email = str(df['Email'][i])
new_black_list = str(df['Black List'][i])
new_santa = SecretSanta(name=new_name, email=new_email, black_list=new_black_list)
secret_santas.append(new_santa)