Escopo, Bibliotecas e Depuração de Funções e Procedimentos
Exemplo 1
1ª versão
#função
def soma10(n):
n = n + 10
# programa principal
n = int(input("Digite um número: "))
soma10(n)
print("Número acrescido de 10: %d." % n)
Não funciona !!!
1ª versão
#função
def soma10(n):
n = n + 10
# programa principal
n = int(input("Digite um número: "))
soma10(n)
print("Número acrescido de 10: %d." % n)
5
Soma10(5)
5
n = 5 + 10 = 15
5
2ª versão
# função
def soma10(n):
n = n + 10
return n
# programa principal
n = int(input("Digite um número: "))
n = soma10(n)
print("Número acrescido de 10: %d." % n)
Escopo de Variáveis
Escopo de Variáveis
Variáveis Locais
def fatorial(n):
fat = 1
for i in range(2, n+1):
fat = fat * i
return fat
x = int(input('Número: '))
print('Fatorial: %d' % fatorial(x))
print(n)
Variáveis Locais
Variáveis Globais
def fatorial(n):
print(x)
fat = 1
for i in range(2, n+1):
fat = fat * i
return fat
x = int(input('Número: '))
print('Fatorial: %d' % fatorial(x))
Variáveis Globais
x = int(input('Número: '))
def fatorial(n):
print(x)
fat = 1
for i in range(2, n+1):
fat = fat * i
return fat
print('Fatorial: %d' % fatorial(x))
Variáveis Globais
import <nome biblioteca>
ou
from <nome biblioteca> import <f1,f2,...>
import random # Funções de números aleatórios
import math # Funções matemáticas
Import turtle # Funções de desenho do Logo
Uso de funções pré-definidas
Exemplos de bibliotecas de uso comum
import math
print(math.factorial(10))
import random
for i in range(50):
print(random.random())
from random import randint, randrange
print (randint(1, 50))
print (randrange(50))
Inclui o 50
Não inclui o 50
Exemplo 2
from random import randint
print('Mega sena. números sorteados')
for i in range(6):
print(randint(1, 50))
Criando suas próprias bibliotecas
def fatorial(n):
fat = 1
for i in range(2, n+1):
fat = fat * i
return fat
def potencia(base, expoente):
potencia = 1
for i in range(1, expoente+1):
potencia = potencia * base
return potencia
Criando suas próprias bibliotecas (continuação)
from matematica import *
num = int(input('Digite um número: ')
print('O fatorial de número é %d' % fatorial(num))
b = int(input('Digite a base da potencia: ')
e = int(input('Digite o expoente da potencia: ')
print('A potencia é %d' % potencia(b, e))
Depurando Funções e Procedimentos
Step Over
Step Over
Step Into
Step Into My Code
Usando Depuração com Funções e Procedimentos