parser = argparse.ArgumentParser( description="Find a time we can all meet.") parser.add_argument( 'date', help="Date to check for available times, format like 2012.05.31") parser.add_argument( 'earliest', help="Earliest potential time to start, format like 8:30") parser.add_argument('latest', help="Latest potential time to end, format like 18:00") parser.add_argument( 'participant', help="A text file containing an agenda, e.g., 'charles.ag'", nargs="*", type=argparse.FileType('r')) available = Agenda() args = parser.parse_args() blockspec = args.date + " " + args.earliest + " " + args.latest + "|Available" freeblock = Appt.from_string(blockspec) available.append(freeblock) for f in args.participant: participant = Agenda.from_file(f) participant = participant.complement(freeblock) available = available.intersect(participant) if len(available) == 0: print("No free times in common") else: print(available)
from agenda import Appt, Agenda import sys import argparse if __name__ == "__main__": parser = argparse.ArgumentParser(description="Find a time we can all meet.") parser.add_argument('date', help="Date to check for available times, format like 2012.05.31") parser.add_argument('earliest', help="Earliest potential time to start, format like 8:30") parser.add_argument('latest', help="Latest potential time to end, format like 18:00") parser.add_argument('participant', help="A text file containing an agenda, e.g., 'charles.ag'", nargs="*", type=argparse.FileType('r')) available = Agenda() args = parser.parse_args() blockspec = args.date + " " + args.earliest + " " + args.latest + "|Available" freeblock = Appt.from_string(blockspec) available.append(freeblock) for f in args.participant: participant = Agenda.from_file(f) available = available.intersect(participant) if len(available) == 0: print("No free times in common") else: print(available)