Funcións

Antes en Python:

  • Executar programas
  • Operadores lóxico-matemáticos
  • Variables
  • Datos estruturados simples (listas)
  • Estruturas de control

 

Benvida/o ao Nivel 4 de aprendizaxe de Python en AlgoRitmia, e o último no que utilizaremos Scratch como referente:

A medida que queremos resolver problemas máis complexos, que fagan máis cousas ou que utilicen datos máis complexos, é imprescindible utilizar funcións. A verba función ten un significado similar ao que adoitamos empregar nas clases de matemáticas, vexamos o seu comportamento en Python:

Que é unha función?

Unha función é un subalgoritmo que creamos e logo utilizamos (decimos invocar ou chamar) escribindo o seu nome para aforrar tempo (non temos que volver a escribir o código da función). Por exemplo:

Función Código Sintaxe Exemplo Resultado
dobre (x) colle un número, multiplícao por 2 e imprime o resultado dobre(x) = 2·x dobre(4) 8

 

Tipos de funcións

  • Funcións predeterminadas; en Scratch, calquera dos bloques que usamos; en Python son métodos.
  • Funcións creadas por nós para un programa determinado.
  • Bibliotecas formadas por métodos, funcións que poden levarse dun programa a outro para aforrar tempo. As bibliotecas son chamadas en Python  módulos ou nunha mala tradución do inglés " librerías".
Funcións Predeterminadas Creadas Bibliotecas
Scratch

definición función creada con scratch

bibliotecas de scratch

Python round ()

def dobre(x):                      dobre(4)

print (2*x)

turtle, random, maths

(estudarémolas máis adiante)

Sintaxe dunha función

As funcións adoitan ter parámetros, variables que son os datos de entrada da función. Cando modificamos o parámetro, se modifica a saída, o resultado de executar a función. A un parámetro que aínda non ten valor podemos chamarlle argumento:

 

 

  • Cando escribimos f(x) = 2·x, x é un argumento.
  • Cando escribimos f(2) = 4, 2 é un parámetro ou entrada e 4 a saída.
conceptos de función

De momento seguiremos a utilizar a palabra parámetro para falar de ambas cousas.

Que as funcións dependan de parámetros é a razón pola que en Python imos identificar unha función escribindo ao seu lado dous parénteses, (). Dentro dos parénteses irán o parámetro ou parámetros. Senón hai parámetro, escribimos () a secas. Exemplo:

  • A función saudo() non ten parámetros, se escribimos no programa o código da función, podemos invocala e vaise executar.

 

  • A función saudo_persoal(nome) colle o valor dun parámetro ou variable, o nome, e modifica a súa saída, o valor que devolve, en función deste parámetro.

 

  • A función saudo_multiple (nome1, nome2) colle o valor de dous parámetros (nomes en este caso) e modifica a súa saída.

funcións con ou sin argumento

 

Importante

En Python temos que crear a función antes de poder chamala ou invocala (ver o problema da concorrencia). Ou sexa, escribimos o código da función na parte de arriba do programa, e na parte de abaixo podemos utilizar a función.

 

Cando avancemos en Python veremos que podemos utilizar funcións con outra sintaxe máis compacta, pero máis complexa. Nese caso falaremos de métodos.

Exercicios:

  1. Copia o código da función saudar e da función saudo_persoal.  Chama ás dúas funcións para ver a saída.
  2. Crea a función con dous parámetros que saúde a dúas persoas.
  3. Crea novas funcións sen parámetros (exemplo: unha función que xenere unha mensaxe de desculpa por non poder atendelos).
  4. Crea novas funcións con un parámetro (exemplo: unha función que se introduces os anos che devolva os segundos que transcorreron).
  5. Crea unha función con dous parámetros (exemplo: unha función que se lle introduces as horas e os minutos che devolva os segundos).

Binarizar e outras conversións Ordena e funcionará Máis orde Que ordene Python