Skip to content

Instantly share code, notes, and snippets.

@santiagosilas
Created April 12, 2018 19:40
Show Gist options
  • Save santiagosilas/5b9edc73fd85465517e6b0819cab2458 to your computer and use it in GitHub Desktop.
Save santiagosilas/5b9edc73fd85465517e6b0819cab2458 to your computer and use it in GitHub Desktop.
Gerador de Código Em Python
# 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')
@itamarfb
Copy link

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.

@Lpzinn31
Copy link

O

@Ghspzl
Copy link

Ghspzl commented Jun 18, 2024

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.

@Ghspzl
Copy link

Ghspzl commented Jun 18, 2024

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.")

@Ghspzl
Copy link

Ghspzl commented Jun 18, 2024

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.")

@milenaabat
Copy link

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

@Tchuco-cyber
Copy link

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment