1
Ich habe eine große Abfrage-Job-Anwendung in Python implementiert und in App-Engine bereitgestellt und benötigen einige Hilfe mit der Effizienz des unteren Filters, die nur auf die Benutzer-E-Mail, die als EingabeErhöhung der Geschwindigkeit des Python-Iterators
eingegeben wirdcredentials = GoogleCredentials.get_application_default()
bq_conn= discovery.build('bigquery', 'v2', credentials=credentials)
job_query_dict = []
###Create the big query client
client =bigquery.Client(project=project_id)
###List the jobs in the client
jobs = client.list_jobs(all_users=True) # API request
print([job for job in list(client.list_jobs(all_users=True)) if job.user_email==user_email][0])
Wie drucke ich die Jobs des Benutzers, die in der Eingabe user_email angegeben werden, besser als das?
Nicht sicher, ob dies eine Copy & Paste-Fehler ist, aber Sie ausführen 'list_jobs' zweimal in Ihrem Beispiel, die nicht notwendig ist. Ihr Listenverständnis könnte wie folgt geschrieben werden: "[Job für Job in Jobs, wenn ...]". Hier können Sie die Antwort verwenden, die Sie bereits haben. – bgse
Es war nur ein Copy-Paste-Ding. Danke für die Antwort, die es funktionierte –
Eigentlich, Pandas Dataframe verwenden machte es schneller, anstatt die Jobs in einer Liste zu bekommen und sie nacheinander zu verarbeiten. –