Nosso robô mascote: Robotson

É com muito orgulho que apresento-lhes nosso robô mascote: Robotson da Silva.

687474703a2f2f6d6164656972612e686363616e65742e6f72672f70726f6a656374322f6d696368656c735f70322f77656273697465253230706963732f62656e6465722e6a7067

Ele é um bot desenvolvido em Python que se comunica com o Slack (https://slack.com/). Seu papel é nos servir colaborar compartilhando links interessantes das nossas conversas no Slack nas redes sociais (Facebook e Twitter por enquanto). Quando queremos ter um link ou parte da nossa conversa publicada apenas adicionamos a palavra gatilho @share e ele compartilha para nós.

Além disso, ele também se comunica com o cleverbot (http://www.cleverbot.com/) que é um robô com inteligência artificial que “conversa com a gente”. Ao mencionar o Robotson no chat ele irá processar a mensagem e me retornar uma resposta.

Fiz o deploy dele no Digital Ocean e você pode consultar o código aqui: https://github.com/opensanca/socialbot.

Creio que ainda há muita coisa para fazer, mas nosso amigo já está bem funcional 🙂

Sugestões? Abraço!

Anúncios

List Comprehension em Python

Trabalhar com Listas em Python é algo bem interessante. Uma das vantagens disso é que, em Python, temos uma ferramenta poderosa chamada List Comprehension. Ela consiste em reduzir a quantidade de código quando você quer transformar uma lista em outra. Hã? Como assim? Vamos supor que você tenha uma lista de strings maiúsculas e com espaçamentos em cada string, mas você deseja “limpar” esta lista (removendo os espaçamentos e deixando tudo em minúsculo) e atribuir os dados limpos a outra, como você faria isso?

Talvez faríamos da seguinte forma:

mylist = [' A ', ' B ', ' C ', ' D ', ' E ']
cleanedlist = []
 
for item in mylist:
    cleanedlist.append(item.strip().lower())

Esse é um código simples para uma tarefa simples. Perfeito! Até mais galera 😉
Não, brincadeira! Esperem! Aplicando o conceito de List Comprehension tem como simplificarmos ainda mais nosso código. Dêem uma olhada no seguinte exemplo:

mylist = [' A ', ' B ', ' C ', ' D ', ' E ']
cleanedlist = [item.strip().lower() for item in mylist]

Pronto! Reduzimos a lógica de limpeza e atribuição para apenas uma linha. Fantástico, não? Agora vamos entender o que está se passando ali. Em List Comprehension lemos o código da direita para a esquerda, assim fica mais fácil de entender. Para cada item em mylist eu vou apagar os espaços em branco com o método split() e deixar a string em letra minúscula com o método lower(); após isso, vou atribuir essa nova lista para cleanedlist.

O Python é uma linguagem fantástica! Nunca deixe de explorar a fundo suas características, você não vai se arrepender 😉

Um abraço e até a próxima!