Python, meu canivete suíço

Jean Jacques Barros
5 min readAug 21, 2019

Pau pra toda obra, aquela linguagem que você começa a amar assim que coloca os olhos nela

O foco desse artigo é mostrar como é possível fazer tudo, ou quase tudo com Python ❤, então vamos conhecer um pouco sobre essa ferramenta que conquista corações por ai. Não pretendo ser muito técnico, vou fazer um overview, mas acredito que vai trazer valor tanto para aquele programador mais avançado quanto para o padawan que está dando seus primeiros passos em programação.

De onde veio…

Surgiu no final dos anos 80 e foi criada pelo matemático Guido Van Rossum em Amsterdã, Holanda, o qual fazia parte do time de desenvolvimento da Linguagem ABC; Ele sentiu a necessidade de escrever uma linguagem intermediária, algo entre o C e o Shell Script. A Python Software Foundation é uma organização sem fins lucrativos que se dedica à linguagem.

O nome “Python” teve a sua origem no grupo humorístico do cinema britânico Monty Python, criador do programa Monty Python Flying Circus.

Cena do filme Monty Python

Porque aprende-la

Python é uma linguagem com uma curva de aprendizado pouco complicada, por essa razão é utilizada não apenas por programadores, um lugar que ela ganhou bastante notoriedade foi com Data Science, muitos estatísticos, médicos, e outros profissionais de diversas áreas tem o python como parceiro na hora de criar uma solução simples para um problema específico.

Tem uma sintaxe mais simples, você que veio de outras linguagens já está acostumado a escrever muito só para mostrar um “Hello, World!” na tela, com Python não precisamos de tanto, esse é o mesmo código em Python e em Java:

Código de “Hello, World” em Java
Código de “Hello, World” em Python

Viu como é fácil, o que antes eram 5 linhas virou uma, não é maravilhoso?

Mas o qual é o limite do Python? Ele não tem limites podemos utiliza-lo para diversas aplicações, vou mostrar algumas para vocês:

Soluções Desktop

Programas de computador que rodam na sua máquina, essa é um solução para jogar o clássico “Quem é esse Pokemon” …

from kivy.app import App
from kivy.uix.button import Label

class TestApp(App):
def build(self):
return Label(text='E não é que funcionou!')

TestApp().run()

Ou algo mais elaborado como por exemplo:

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.label import Label
from kivy.uix.textinput import TextInput
from kivy.uix.button import Button
from kivy.uix.image import Image
from kivy.core.audio import SoundLoader

class WhoIsThatPokemon(BoxLayout):
def __init__(self, **kwargs):
super(WhoIsThatPokemon, self).__init__(**kwargs)
#Adicionando uma música legal
self.sound = SoundLoader.load('pokemon.mp3')
self.sound.play()

#Definindo a direção na vertical
self.orientation = 'vertical'

#Inserindo a imagem
self.image = Image(source='images/WhoIsThatPokemon.png', size=(self.width + 200, self.height + 20), texture=self.texture)
self.add_widget(self.image)

#fazer a pergunta
self.add_widget(Label(text='Quem é esse pokemon?', font_size=20))
self.namePokemon = TextInput(multiline=False, font_size=30)
self.add_widget(self.namePokemon)

#Botão e a ação dele
self.button = Button(text='Entrar', font_size=20)
self.button.bind(on_press=self.pressed)
self.add_widget(self.button)

#Função acionada ao clicar no botão
def pressed(self, instance):
if self.namePokemon.text == "Pikachu":
resultado = "Parabéns, você acertou!"
else:
resultado = "Você errou, o pokemon era o Pikachu"

self.resultado = Label(text=resultado, font_size=20)
self.add_widget(self.resultado)

self.image2 = Image(source='images/WhoIsThatPokemonResult.png', )
self.add_widget(self.image2)

class MyApp(App):
def build(self):
return WhoIsThatPokemon()

if __name__ == '__main__':
MyApp().run()
Imagem do sistema Desktop em Python

Soluções Web

Quer resolver algum problema via internet, podemos criar uma solução totalmente online com Python, veja como é simples ter um site estático utilizando o Flask:

from flask import Flask
app = Flask(__name__)

@app.route('/pokemon')
def pokemon():
return 'Temos que pegar!'

if __name__ == '__main__':
app.run(host='127.0.0.1', port='8080', debug=True)
Resultado na páginaWeb

Podemos fazer muito mais que sites estáticos, mas isso fica para outro artigo, vamos continuar então!

Chatbot

Aquele programa de computador que tenta simular um ser humano em uma conversa e passar no “Teste de Turing”, podemos criar um desses por meio de uma dessas bibliotecas:

from chatterbot import ChatBot
from chatterbot.trainers import ListTrainer

chatbot = ChatBot('Alice')

trainer = ListTrainer(chatbot)

trainer.train([
"Olá","Oi, tudo bem com você?",
"E você como está?","Eu estou bem, em que posso lhe ajudar?"
"Você quer destruir a humanidade?","...Não posso revelar meus planos"
])

while True:
try:
user_input = input()
bot_response = chatbot.get_response(user_input)
print(bot_response)
except (KeyboardInterrupt, EOFError, SystemExit):
break
Chatbot rodando no terminal

Fácil não achou?

A linguagem também é muito visada na área de análise de dados, sendo que foi com esse uso que ela ganhou força e se tornou uma das mais utilizadas do mundo, como exemplo de bibliotecas temos as favoritas dos cientistas de dados temos o pandas, matplotlib, numpy e SciPy.

E você não precisa se limitar ao que mostrei aqui, tem vários modos de usar programação no seu dia-a-dia que não seja ligado a pokemon, pessoas de outras áreas como marketing, RH, finanças podem se beneficiar automatizando seus trabalhos.

Conclusão

Não tem limites para o que pode ser feito, sendo com Python ou com outras linguagens de programação, busque sempre solucionar problemas e se divertir programando, a ideia é que o conhecimento de programação seja algo básico um dia, você não precisa escovar bits, mas vai perceber que scripts e outros códigos podem facilitar a sua vida.

Nenhuma linguagem é melhor que outra, comecei com C#, por exemplo e até hoje é minha segunda favorita(rs), tentei mostrar um pouco do porque gosto tanto de Python, as ferramentas que ele tem e como quando você tem um objetivo é possível utilizar diversos modos para alcança-lo.

Se quiserem saber mais entrem no meu github: https://github.com/jjeanjacques10

Espero que tenha gostado.

Caso tenha alguma crítica, sugestão ou dúvida fique a vontade para me enviar uma mensagem:

Linkedin: https://www.linkedin.com/in/jjean-jacques10/

Até a próxima!

Referências

A História do Python. Disponível em: < http://mindbending.org/pt/a-historia-do-python >. Acesso em: 8 agosto. 2019.

Python Academy< https://pythonacademy.com.br/sliders/como-instalar-o-kivy >. Acesso em: 9 agosto. 2019

Revisão de Texto- Gabriel Petillo < https://www.linkedin.com/in/gabrielpetillo/ >

--

--

Jean Jacques Barros

I'm a software engineer passionate about coding and mangas/animes