No treinamento Praticando Python: laços for e while, para o exercício Controle de estoque, implementei o código com while para ficar no laço enquanto o estoque tenha livros, a cada compra é verificado se existe saldo no estoque, quando o estoque estiver em 0 a mensagem de estoque esgotado é apresentada.
estoque = 5
def vender(qtd):
global estoque
if qtd > estoque:
print('Estoque insuficiente!')
else:
estoque -= qtd
while estoque > 0:
print(f'Venda realizada! Estoque restante: {estoque}')
if estoque > 0 :
livros_vendidos = int(input('Quantos livros foram vendidos? '))
vender(livros_vendidos)
print('Estoque esgotado!')