Das sollte einfach sein, aber ich habe eine harte Zeit damit. Im Grunde genommen habe ich 4 Strings, die ich für jede Iteration meiner for-Schleife erzeuge und dann zu einer Liste hinzufüge. Ich möchte alle 4 Elemente eine Zeile und ich muss in der Lage sein, die 4 Spalten Header-Werte geben. Das sieht nach einem Job für Pandas aus, aber ich kann es einfach nicht so bekommen, wie ich es brauche. Vielen Dank im Voraus für Ihre Unterstützung. Hier ist, was ich bisher:Wie man einen Pandas Datenrahmen mit mehreren Spalten aus der Liste generiert
def main():
credentials = get_credentials()
http = credentials.authorize(httplib2.Http())
service = discovery.build('calendar', 'v3', http=http)
deadline_list = []
pattern1 = re.compile(r'(?::)(.+$)')
pattern2 = re.compile(r'(?:.+:\s+)(\w+\s+\w+)')
StartDate = '2017-05-14'
EndDate = '2017-05-19'
print('\nGetting events within date range\n')
eventsResult = service.events().list(
calendarId='primary', timeMin=StartDate+'T00:00:01.000Z', timeMax=EndDate+'T23:59:59.000Z',
singleEvents=True,
orderBy='startTime').execute()
events = eventsResult.get('items', [])
if not events:
print('No upcoming events found.')
for event in events:
if re.search('^\d+',event['location']):
start = event['start'].get('dateTime', event['start'].get('date'))
deadline_type = pattern1.search(event['description']).group(1).rstrip('\r')
client_name = pattern2.match(event['description']).group(1)
location = ' '.join(event['location'].split())
deadline_list.extend([location, start, deadline_type, client_name])
else:
pass
print(deadline_list)
Süß, es funktioniert! Danke, James! – Ryan