[Python-es] [Consulta] KeyError: 'main'

2020-07-02 Por tema Lemarchand Barker
Hola, estoy teniendo un inconveniente a la hora de correr un programa. El código es este: base_url = "http://api.openweathermap.org/data/2.5/weather?q="; city_name = input("Ingrese nombre de la ciudad: ") complete_url = base_url + "appid=" + api_key + "&q=" + city_name response = requests.get(

Re: [Python-es] [Consulta] KeyError: 'main'

2020-07-02 Por tema Lemarchand Barker
Ya logré solucionarlo, ahora tengo que cambiar para que la temperatura la muestre en celsius. Cerrado :) El jue., 2 jul. 2020 a las 11:44, Lemarchand Barker (< lemarchand8...@gmail.com>) escribió: > Hola, estoy teniendo un inconveniente a la hora de correr un programa. > > El código es este: > >

[Python-es] [Consulta] Sobre keyerror

2020-07-02 Por tema lemarchand8679
Hola, había escrito para comentar que había solucionado el inconveniente de KeyError, y es cierto en parte. Digo en parte porque si escribo desde 0 para hacer algunas modificaciones, me tira ese error al introducir una ciudad, y si hago un copy-paste del código funciona y la verdad no se por qué

Re: [Python-es] [Consulta] Sobre keyerror

2020-07-02 Por tema Gerardo Diez
Hola, No soy precisamente un experto, pero yo normalmente voy poniendo prints /liga por todos lados para que me vaya mostrando el contenido de las cadenas. No recuerdo muy bien el funcionamiento de input pero puede ser que el string que se esté incorporando lleve un salto de línea final ( \n)? S

Re: [Python-es] [Consulta] Sobre keyerror

2020-07-02 Por tema Lemarchand Barker
Hola, este es mi código: import requests import json api_key = "API_KEY" url = "http://api.openweathermap.org/data/2.5/weather?q=sp"; nombre_ciudad = input("Ingrese nombre de la ciudad: ") complete_url = url + "appid=" + api_key + "&q=sp" + nombre_ciudad response = requests.get(complete_url)

Re: [Python-es] [Consulta] Sobre keyerror

2020-07-02 Por tema Sebastián Arancibia
Hola, En efecto el error es porque no encuentra la key en el diccionario. De hecho hice un print de la variable que obtienes tras llamar a la API, y al no tener un API KEY válido no viene el elemento "main" dentro del diccionario. Este es el json de respuesta convertido a diccionario: {'cod': 401

Re: [Python-es] [Consulta] KeyError: 'main'

2020-07-02 Por tema Alexis Roda
Hola, En este caso el valor de x no es exactamente como crees que es: esperas que tenga una clave llamada "main" que aparentemente no tiene (dispara una excepción KeyError cuando intentas acceder a "main"). Lo que puedes hacer es averiguar como es realmente el valor almacenado en x. Lo más sencil

Re: [Python-es] [Consulta] Sobre keyerror

2020-07-02 Por tema David Suárez vía Python-es
Vero, el problema que veo es que tienes la cadena "sp" de sobra tanto en la variable url como cuando generas complete_url y creo que no deberían ir allí, aunque no he podido checarlo por lo de la llave API. El jue., 2 de jul. de 2020 a la(s) 17:30, Lemarchand Barker ( lemarchand8...@gmail.com) es

Re: [Python-es] [Consulta] Sobre keyerror

2020-07-02 Por tema Lemarchand Barker
Hola, el código de api key funciona, porque me registré y lo usé y funcionó. Lo de sp fue más que nada para probar, corresponde al Multilingual support. Incluso cuando hice copy-paste del código sin usar el sp, funcionaba perfecto. Lo saqué de acá: https://openweathermap.org/current. Lo del multili

Re: [Python-es] [Consulta] Sobre keyerror

2020-07-02 Por tema lasizoillo
Buenas, perdonad el Off Topic, pero creo que es interesante comentar esto. El jue., 2 jul. 2020 a las 23:19, Gerardo Diez (< gerardo.diez.gar...@gmail.com>) escribió: > Hola, > > No soy precisamente un experto, pero yo normalmente voy poniendo prints > /liga por todos lados para que me vaya mostr

Re: [Python-es] [Consulta] Sobre keyerror

2020-07-02 Por tema Sebastián Arancibia
Aportando a lo que dices, y considerando que Verónica (ese era tu nombre, verdad?) usa PyCharm, el debugger que viene con el IDE es prácticamente lo mejor del IDE. Puedes configurar tu código para que se ejecute desde un main y ahí es simplemente darle "play" a la flecha que aparece al costado de l