Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Challenge: Async Weather Reporter | Working with Asyncio Tasks
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Python Asyncio Basics

bookChallenge: Async Weather Reporter

In many real-world applications, you need to fetch data from several sources at once. Imagine you are building a weather dashboard that shows the current temperature for multiple cities. Instead of waiting for each city’s data to arrive one after another, you can use Python’s asyncio to fetch all the data concurrently, making your program much faster and more responsive. By simulating each weather data fetch as an asynchronous function that waits a random amount of time, you can see how asyncio.gather lets you run all these tasks together and collect their results as soon as they’re ready.

Task

Swipe to start coding

Simulate fetching weather data for several cities concurrently using asynchronous functions. Each city's weather is "fetched" with a random simulated delay. Use asyncio.gather to run all fetches together and collect their results. After all weather data is fetched, print the results for each city.

  • Each city's weather should be fetched by calling fetch_weather with the city name.
  • All fetches should run concurrently using asyncio.gather.
  • After fetching, print the weather result for each city.

Solution

Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 2. Chapter 3
single

single

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

Suggested prompts:

Can you show me an example of how to use asyncio.gather for this scenario?

How does asyncio.gather improve performance compared to sequential fetching?

Can you explain how to simulate asynchronous weather data fetching in Python?

close

bookChallenge: Async Weather Reporter

Swipe to show menu

In many real-world applications, you need to fetch data from several sources at once. Imagine you are building a weather dashboard that shows the current temperature for multiple cities. Instead of waiting for each city’s data to arrive one after another, you can use Python’s asyncio to fetch all the data concurrently, making your program much faster and more responsive. By simulating each weather data fetch as an asynchronous function that waits a random amount of time, you can see how asyncio.gather lets you run all these tasks together and collect their results as soon as they’re ready.

Task

Swipe to start coding

Simulate fetching weather data for several cities concurrently using asynchronous functions. Each city's weather is "fetched" with a random simulated delay. Use asyncio.gather to run all fetches together and collect their results. After all weather data is fetched, print the results for each city.

  • Each city's weather should be fetched by calling fetch_weather with the city name.
  • All fetches should run concurrently using asyncio.gather.
  • After fetching, print the weather result for each city.

Solution

Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 2. Chapter 3
single

single

some-alt