
Basico python indentacion confusa
Publicado por perro (13 intervenciones) el 13/12/2021 14:53:23
Buenos dias
aprendiendo python a punta de cursitos online y pues me e dado con un caso de identacion no tan, digamos logico
tego un archivo de configuracion un "config.json" que nesecito importar como un dict, eso de la importacion funciona bien
ahora nesecito, como el usuario va a editar maualmente ese "config.json" asegurarme que el dict es valido y tiene las keys que se nesecitan para que el resto del programa funcione peromeda problemas asi que saque a parte este pedazo de codigo para probar y ver que esta mal y me encontre q
este deberia devolver 0 1 2 3 True si las 4 condiciones se cumplen pero no hace sino devolver False y es como si nisiquiera validara el primer if, como si solo se saltara hasta el False
como soy nuevo en esto del python no veo que problema tiene la identacion y mi cerebro insiste que al codigo le faltan corchetes
esto es lo que sale en consola
alguien me podria decir que tiene de malo este codigo por favor ?
aprendiendo python a punta de cursitos online y pues me e dado con un caso de identacion no tan, digamos logico
tego un archivo de configuracion un "config.json" que nesecito importar como un dict, eso de la importacion funciona bien
ahora nesecito, como el usuario va a editar maualmente ese "config.json" asegurarme que el dict es valido y tiene las keys que se nesecitan para que el resto del programa funcione peromeda problemas asi que saque a parte este pedazo de codigo para probar y ver que esta mal y me encontre q
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
## check if dict config_dict is valid an has all the keys
def is_valid_config(config_dict):
print( type(config_dict) )
if type(config_dict) == "<class 'dict'>":
print("0")
if "dbf_file_name" in config_dict:
print("1")
if "buscar_codigo_en" in config_dict:
print("2")
if "precio" in config_dict:
print("3")
return True
return False
## dict de prueba
config_dict = {
"dbf_file_name" : "TMDFAINV.DBF",
"buscar_codigo_en" : "CODIGO",
"precio" : "PRECIO_A"
}
##Lanzar la def
print( is_valid_config(config_dict) )
este deberia devolver 0 1 2 3 True si las 4 condiciones se cumplen pero no hace sino devolver False y es como si nisiquiera validara el primer if, como si solo se saltara hasta el False
como soy nuevo en esto del python no veo que problema tiene la identacion y mi cerebro insiste que al codigo le faltan corchetes
esto es lo que sale en consola
1
2
3
usuario@red:~/eclipse-workspace/AhoraConPlantillas/src$ python3 config.py
<class 'dict'>
False
alguien me podria decir que tiene de malo este codigo por favor ?
- error-consola.zip(25,3 KB)
Valora esta pregunta


0