21.12.2022 Views

python_para_desenvolvedores_2ed

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Funções 55

# -*- coding: latin1 -*-

def rgb_html(r=0, g=0, b=0):

"""Converte R, G, B em #RRGGBB"""

return '#%02x%02x%02x' % (r, g, b)

def html_rgb(color='#000000'):

"""Converte #RRGGBB em R, G, B"""

if color.startswith('#'): color = color[1:]

r = int(color[:2], 16)

g = int(color[2:4], 16)

b = int(color[4:], 16)

return r, g, b # Uma sequência

print rgb_html(200, 200, 255)

print rgb_html(b=200, g=200, r=255) # O que houve?

print html_rgb('#c8c8ff')

Saída:

#c8c8ff

#ffc8c8

(200, 200, 255)

Observações:

▪ Os argumentos com padrão devem vir por último, depois dos

argumentos sem padrão.

▪ O valor do padrão para um parâmetro é calculado quando a função é

definida.

▪ Os argumentos passados sem identificador são recebidos pela função

na forma de uma lista.

▪ Os argumentos passados com identificador são recebidos pela função

na forma de um dicionário.

▪ Os parâmetros passados com identificador na chamada da função

devem vir no fim da lista de parâmetros.

Exemplo de como receber todos parâmetros:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!