UserInput: (“LANDSAT8,5,MODIS,3,SENTINAL2,6”).
User entered three satellites name and instruct the program that how many images of that
particular satellite should be downloaded. In this example, there are three pairs;
- LANDSAT8,5
- MODIS,3
- SENTINAL2,6
Preferred Output should be like:
Program Output:
LANDSAT8 image 1 downloaded
LANDSAT8 image 2 downloaded
LANDSAT8 image 3 downloaded
LANDSAT8 image 4 downloaded
LANDSAT8 image 5 downloaded
MODIS image 1 downloaded
MODIS image 2 downloaded
MODIS image 3 downloaded
SENTINAL2 image 1 downloaded
SENTINAL2 image 2 downloaded
SENTINAL2 image 3 downloaded
SENTINAL2 image 4 downloaded
SENTINAL2 image 5 downloaded
SENTINAL2 image 6 downloaded
>Solution :
I think this may be what you’re trying to do:
user_input = "LANDSAT8,5,MODIS,3,SENTINAL2,6"
tokens = user_input.split(',')
for s, d in zip(tokens[::2], map(int, tokens[1::2])):
for i in range(d):
print(f'{s} image {i+1} downloaded')
Output:
LANDSAT8 image 1 downloaded
LANDSAT8 image 2 downloaded
LANDSAT8 image 3 downloaded
LANDSAT8 image 4 downloaded
LANDSAT8 image 5 downloaded
MODIS image 1 downloaded
MODIS image 2 downloaded
MODIS image 3 downloaded
SENTINAL2 image 1 downloaded
SENTINAL2 image 2 downloaded
SENTINAL2 image 3 downloaded
SENTINAL2 image 4 downloaded
SENTINAL2 image 5 downloaded
SENTINAL2 image 6 downloaded