Je sais que la solution n'est pas loin ici, mais j'ai du mal à implémenter la possibilité d'attribuer une valeur numérique à l'échelle de la carte en fonction de l'entrée de l'utilisateur. Le code est assez explicite mais je voudrais que l'utilisateur sélectionne parmi 4 états de zoom, en utilisant l'entrée, retourne une valeur numérique sur ma carte comme point de départ du zoom.Comment gérer correctement python
zoom=5
while True:
where = raw_input('Where would you like a map of?')
try:
heatmap = folium.Map(location=geo(where), tiles='Stamen Toner', zoom_start=zoom)
pointmap = folium.Map(location=geo(where), tiles='Stamen Toner', zoom_start=zoom)
except AttributeError, GeocoderServiceError:
print "Cannot create map with the given location. Please try again."
else:
break
while True:
zoom_state = ['city', 'state', 'country', 'world']
zoom_state= raw_input('What level of detail would you like: city, state, country, or world?')
try:
for response in zoom_state:
if response is ['city']:
zoom == 9
if response is ['state']:
zoom == 7
if response is ['country']:
zoom == 5
if response is ['world']:
zoom == 9
except TypeError, IndexError:
print 'Please enter: city, state, country, or world. Try again'
continue
else:
break
heatmap = folium.Map(location=geo(where), tiles='Stamen Toner', zoom_start=zoom)
pointmap = folium.Map(location=geo(where), tiles='Stamen Toner', zoom_start=zoom)
En l'état actuel, je peux mettre n'importe quoi dans zoom_state et il fonctionnera.
Merci d'avance!
Tout d'abord, votre entrée brute pour le niveau de détail est sur l'écriture de la liste des zoom_state. Quelle est la sortie lorsque vous exécutez? – benrules2
Ce code a beaucoup de problèmes. D'abord, vous définissez zoom_state, puis le modifiez. Deuxièmement, votre imbrication des instructions if est suspecte. Troisièmement, vous êtes en train de boucler zoom_state (pour une raison quelconque), mais vous n'utilisez jamais la variable de réponse dans la boucle. – Oli
Merci à vous deux, évidemment je suis nouveau à ce (premier trimestre). La sortie est qu'il fonctionne avec la valeur par défaut de 5 je crois. Je vais changer zoom_state pour la réponse j'espère l'obtenir en état de marche –