Olá. Escrevi inicialmente o código: versão 1:
primeiro_numero = int(input('Digite um número inteiro: '))
segundo_numero = int(input('Digite um número inteiro: '))
def potencial():
return print(f'A potencia é {pow(primeiro_numero, segundo_numero)}')
potencial()
versão2:
import math
class CalculadoraDePotencia:
def __init__(self):
self.base = 0
self.expoente = 0
def solicitar_numeros(self):
self.base = int(input("Digite o 1º número (base): "))
self.expoente = int(input("Digite o 2º número (expoente): "))
def calcular_potencia(self):
return math.pow(self.base, self.expoente)
# Demonstração:
# Criamos uma instância da classe e usamos seus métodos
# NOTA: A função input não funcionará diretamente aqui, então vou simular essa parte.
calculadora = CalculadoraDePotencia()
calculadora.base = 2 # Simulando a entrada do usuário
calculadora.expoente = 3 # Simulando a entrada do usuário
resultado = calculadora.calcular_potencia()
resultado
versão3: depois escrevi com POO:
class CalculadoraDePotencia:
def __init__(self):
self._base = 0
self._expoente = 0
def solicitar_numeros(self):
self._base = int(input("Digite o 1º número (base): "))
self._expoente = int(input("Digite o 2º número (expoente): "))
def calcular_potencia(self):
return math.pow(self._base, self._expoente)
calculadora = CalculadoraDePotencia()
calculadora.solicitar_numeros()
resultado = calculadora.calcular_potencia()
resultado
1- Em data science , a programação orientada a objetos (POO) é relevante? É comum? Ou a abordagem procedural é mais frequente?
2- Devemos criar ambientes virtuais no Colab ou ele já fornece um ambiente virtual por padrão?
3- Não tenho o costume de usar input() em POO. A abordagem da versão 2, onde atribuo valores diretamente, é mais comum para mim. No entanto, na versão 3, o código só funciona quando não defino as variáveis no método init (atribuindo a elas valores iniciais = 0). Isso está correto? Existem abordagens melhores?
3- No contexto do Desenvolvimento Orientado a Testes (TDD), aplicaremos essa metodologia no Colab? Preciso praticar mais a parte de testes.