Muita gente que já programou em outras linguagens, se apaixonou por Python por muitos motivos, mas um deles é a facilidade com que se constrói as coisas. Um bom exemplo disso é o próprio "Hello world". Veja só:
C#:
// A Hello World! program in C#.using System;
namespaceHelloWorld
{
classHello
{
staticvoidMain()
{
Console.WriteLine("Hello World!");
// Keep the console window open in debug mode.
Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}
}
} Java: publicclassHelloWorld{publicstaticvoidmain(String[] args){// Prints "Hello, World" to the terminal window. System.out.println("Hello, World");}}Cobol:
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
* simple hello world program
PROCEDURE DIVISION.
DISPLAY 'Hello world!'.
STOP RUN.
Delphi:
program HelloWorld;
{$APPTYPE CONSOLE}
begin
WriteLn('Hello World');
end.
Python:print("Goodbye, World!")Pois bem...O que muita gente que programa em Python não sabe é que o que é simples pode ficar ainda mais simples!Vamos a alguns exemplos:Temos esse lindo laço de repetição chamado for:listinha = []
for quadrado in range(10):
listinha.append(quadrado**2)
print(listinha)Bem... Essa foi fácil né?Mas vamos dar uma melhorada nisso:listinha = list(map(lambda x: x**2, range(10)))
print(listinha)Uai! Que coisa massa, hein??Mas não para por aí! Vamos remelhorar!listinha = [x**2 for x in range(10)]print(listinha)Nossa!!! Tô mais bobo que o Kuririn quando o Vegeta se transformou em Super Sayajin!Muito legal né?Agora vamos ver outra bruxaria do Python. Vamos criar duplas de números onde os algarismos não se repitam entre si, usando duas listas:duplinha = []
for x in [1,2,3]:
for y in [3,1,4]:
if x!=y:
duplinha.append((x,y))
print(duplinha)Aplicando a magia:duplinha = [(x, y) for x in [1,2,3] for y in [3,1,4] if x != y]print(duplinha)Sensacional né? Esse tio Python é mais inacrebelieveble que a vassoura de aço!!!Agora a saideira: vamos fazer uma matriz transposta:
matrix = [
[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12],
]
transposta = [[row[i] for row in matrix] for i inrange(4)]
print(transposta)QUE COISA MAIS LINDA DE DEUS!!!O nome dessa mágica é LIST COMPREHENTION. Vale a pena pesquisar sobre. Inclusive, temos esse belo vídeo do mestre da vida Edu Mendes: