-
-
Save santiagosilas/5b9edc73fd85465517e6b0819cab2458 to your computer and use it in GitHub Desktop.
# coding: utf-8 | |
import os | |
import re | |
template_int = """ | |
// seu template aqui .. | |
namespace umanamespace.umdominio | |
{ | |
public interface IumaentidadesController : IControllerBase<umaentidade> | |
{ | |
} | |
} | |
""" | |
template_imp = """ | |
namespace umanamespace.umdominio.Impl | |
{ | |
public class umaentidadesController : ControllerBase<umaentidade>, IumaentidadesController | |
{ | |
private readonly IumaentidadeService service; | |
public umaentidadesController(IumaentidadeService service) : base(service) | |
{ | |
this.service = service; | |
} | |
} | |
} | |
""" | |
def multiple_replacer(*key_values): | |
replace_dict = dict(key_values) | |
replacement_function = lambda match: replace_dict[match.group(0)] | |
pattern = re.compile("|".join([re.escape(k) for k, v in key_values]), re.M) | |
return lambda string: pattern.sub(replacement_function, string) | |
def multiple_replace(string, *key_values): | |
return multiple_replacer(*key_values)(string) | |
# subdominios em dominios | |
subdomains = ['pasta1', 'pasta2', 'pasta3'] | |
# templates | |
# ################# | |
# Funcoes do script # | |
# ################# | |
def create_temp_folder(): | |
# Cria subpastas e dicionario com paths | |
temp_folder = 'temp_controllers' | |
if not os.path.exists(temp_folder): | |
os.makedirs(temp_folder) | |
for subdomain in subdomains: | |
folder = temp_folder+ '/' + subdomain | |
if not os.path.exists(folder): | |
os.makedirs(folder) | |
def create_file(nome, template, dominio, entidade): | |
#s = template.replace('umdominio', dominio) | |
#s = template.replace('umaentidade', entidade) | |
replacements = ("umdominio", dominio), ('umaentidade', entidade) | |
s = multiple_replace(template, *replacements) | |
file = open(nome, 'w') | |
file.write(s) | |
file.close() | |
def getEntities(path): | |
entities = list() | |
for file in os.listdir(path): | |
if 'Entity' in file: | |
continue | |
entities.append(file.replace('.cs','')) | |
return entities | |
contexts = { | |
'Pasta1':{ | |
'entities': getEntities('pasta1/Entities'), | |
}, | |
'Pasta2': { | |
'entities': getEntities('pasta2/Entities'), | |
}, | |
'Pasta3': { | |
'entities': getEntities('pasta3/Entities'), | |
}, | |
} | |
if __name__ == "__main__": | |
# Cria pasta temporaria se necessario | |
print('\t') | |
create_temp_folder() | |
for context in contexts.keys(): | |
for entity in contexts[context]['entities']: | |
print(entity, end='\t\t') | |
print('\n') |
O
Escreva um programa em Python que contenha uma variável cujo valor é um número inteiro, e em seguida exiba uma mensagem dizendo se este número é ímpar ou par.
Dicas:
-
Use uma estrutura de decisão "if, else" para resolver o problema.
-
Use o operador aritmético '%' para calcular o resto da divisão e saber se o número é ímpar ou par.
Definir a variável com um número inteiro
numero = 7 # Você pode alterar esse valor para testar com outros números
Verificar se o número é par ou ímpar
if numero % 2 == 0:
print(f"O número {numero} é par.")
else:
print(f"O número {numero} é ímpar.")
Definir a variável com um número inteiro
numero = 7 # Você pode alterar esse valor para testar com outros números
Verificar se o número é par ou ímpar
if numero % 2 == 0:
print(f"O número {numero} é par.")
else:
print(f"O número {numero} é ímpar.")
Gerar todas as multiplicações possíveis de 1 a 20
todas_as_contas_expandidas = [(a, b) for a in range(1, 21) for b in range(1, 21)]
Embaralhar as contas
random.shuffle(todas_as_contas_expandidas)
Selecionar as primeiras 100 com resultados únicos
resultados_expandidos = set()
contas_unicas_expandidas = []
for a, b in todas_as_contas_expandidas:
resultado = a * b
if resultado not in resultados_expandidos:
resultados_expandidos.add(resultado)
contas_unicas_expandidas.append(f"{a} x {b} = {resultado}")
if len(contas_unicas_expandidas) >= 100:
break
contas_unicas_expandidas
Utilize o módulo math
para calcular o fatorial de 8. Armazene o resultado em uma variável chamada fatorial_8
e imprima o valor.
Gostaria de desenvolver um programa em python para competições de Tae Kwon do.
Preciso de uma janela principal, com fundo preto.
São necessários dois quadros, dentro da janela, um com fundo vermelho e com fundo um azul, esquerda e direita, respetivamente.
Os pontos ficam na cor amarela, os quadros podem ter 400 pixels de largura e altura.
Os pontos devem ser inseridos pelo teclado da seguinte forma:
Letra ‘A’ adiciona 1 ponto no quadro vermelho.
Letra ‘S’ adiciona 2 pontos no quadro vermelho.
Letra ‘D’ subtrai 1 ponto no quadro vermelho.
Letra ‘Q’ adiciona 1 ponto no quadro azul.
Letra ‘W’ adiciona 2 pontos no quadro azul.
Letra ‘E’ subtrai 1 ponto no quadro azul.
Os pontos devem aparecer no centro dos quadros, vermelho e azul.
Além disso, é preciso um cronômetro de medir round, que deve ficar entre os quadros com os pontos, deve ser regressivo e pedir ao usuário o tempo, em segundos de cada round, isso uma única vez. Depois ele memoriza o tempo. Deve ter três botões, iniciar, para e reiniciar.
Outro cronometro deve ser acionado por meio de um botão, quando clicado, uma janela nova janela se abre, tipo popup e conta até um minuto, dando um aviso sonoro ao final desse tempo e indicando, tempo esgotado, se for parado antes, deve fechar.