/address_book

A simple address book in Python

Primary LanguagePython

Simple Address Book

To use this library you need to import it

from address_book import AddressBook, Person, Group

To create Person and Group you need to give a first and last name

person = Person(first_name='first name', last_name='last name', emails=['some@com', 'some@com'])
group = Group(name='Group', persons=[person1, person2])

After this you can fill your Address book with persons or groups. Each person in group will be available in AddressBook.

address = AddressBook(persons=[person1, person2], groups=[group1, group2])

Or

address = AddressBook()
address.add_person(person)
address.add_group(group)

You can get all members, belongs to group

persons = address.get_persons_from_group(group)

get_persons_from_group return generator of persons

Also you can get groups the person belongs to

groups = address.get_belongs_groups(person)

It return generator too.

At last, you can find person in address book by name or email

users = address.find_person_by_name(name='some name')
users = address.find_person_by_email(name='some email')

This functions return user generator even if name or email have partly coincidence

For finding person by email, if we have only common substring, we could use regex instead of str.startswith()