首页 > 解决方案 > 为什么它给我意想不到的unindent =

问题描述

为什么函数crear_bd会给我意想不到的缩进?我认为这是一个很好的位置或其他可能会影响这一点的东西?我定义了 crear_bd 函数,只是在这里没有包含它。我是初学者。

def agregar_categoria():
    categoria = input("¿Como quieres nombrar a la nueva categoria?\n> ")

    conexion = sqlite3.connect("restaurante.db")
    cursor = conexion.cursor()

    try:
        cursor.execute(''' INSERT INTO categoria (null, '{}')'''.format(categoria))

        conexion.commit()
        conexion.close()
    
crear_bd()

while True:
    print("\nBienvenido al gestor del restaurante!")
    opcion = input("\nIntroduce una opción:\n[1] Agregar una categoría\n ")
        
    

标签: python

解决方案


我认为你不能使用try没有exceptor的 a finallyexcept:因此,只需在您的块下方添加一个块try,它应该可以正常工作。你可以简单地做一个

except:
   pass

忽略所有异常,但我不建议这样做。最好考虑一个有用的异常处理。

这不是混合空格和制表符的问题,尽管这通常是unexpected unindent. 但是在这种情况下,python 需要该except块,并且该块需要缩进。所以缺失except隐藏在unindent错误背后。


推荐阅读