[phpBB Debug] PHP Warning: in file /bitnami/phpbb/ext/kinerity/bestanswer/event/main_listener.php on line 514: Undefined array key "poster_answers"
BrDoom Fórum • [Python] Como começar [pra quem sabe C entre também!]
Página 1 de 2

[Python] Como começar [pra quem sabe C entre também!]

Enviado: Ter Fev 17, 2009 1:40 pm
por Rico
Olá meus amigos quero vir aqui apresentar a vocês uma linguagem de programação teoricamente nova.
Conheci ela a 1 ano e meio, porém nunca tive uma boa documentação onde me desse algum exemplo e me explicasse isso, como funciona e porque, hoje voltei meus estudos e consegui achar o site DOC oficial do python em inglês e estou me dando muito bem com esta linguagem tão simples, rápida e versátil, tão quanto C/C++! [Breve noção]

História:

Python foi criado em meados de 1990 por Guido van Rossum em Stichting Mathematisch Centrum (CWI, see http://www.cwi.nl/) [Como um IMCE da USP] na Holanda como um sucessor da linguagem ABC. Guido ainda é considerado o principal autor de Python, contudo, vem recebendo ajuda de vários colaboradores.

Vantagens:

• Pequeno, rápido, e tão versátil quanto C, e Java.
Pequeno em vários pontos, como o tamonho do código, e peso.
Rápido não há necessidade de declarar uma variável, nem de compilar [como no C: SOURCE.C -> OBJECT -> EXE], nada disso, o próprio interpretador faz tudo na hora. :D
Versátil tão poderoso quanto C e java, tudo que o C e Java faz e poucas linhas!

• Você poderia escrever um Unix shell script ou Windows batch para algumas tarefas, mas Shell Script são bons em mover, renomear arquivos e tarefas simples, não muito usados em aplicativos GUI [interface] ou para jogos! (Isso mesmo, se alguém aqui conhece Frets on Fire, fique sabendo que ele é feito em Python, procure na pasta arquivos *.py). Você pode escrever um programa C/C++/Java, mas isso pode levar muito tempo de desenvolvimento para fazer apenas uma simples parte do programa. Python é simples de usar, disponível em Windows, Mac OS X, e Unix, e vai ajudar a você fazer um trabalho mais rápido.

• Python é simples, mas é uma linguagem de programação em tempo real, oferecendo mais estrutura e suporte para programas grandes como shell scripts ou batch podem oferecer. E por outro lado, Python também oferece muito mais cheque de erros do que C, e, e sendo uma linguagem de programação muito alta, e alto nivel de dados, como flexiveis arrays e dicionarios. Por causa disso muitos dados importantes em Python são usados até mais que Awk ou até Perl, Awk e Perl, são fáceis, assim como Python. :)

Baseado e traduzido em Python Docs

Porra Rico falo demais, mostre-nos alguns exemplos!

Primeiro, para quem está interessado no Python, aqui estão os links:
• Windows x86 e AMD64

• Linux (é em código fonte, só compilar) em Gzip e em Bzip

• Mac OS X Installer Disk Image

É hora dos exemplos e comparações!

Farei um simples código em C que imprime um OI na tela, sem frescuras, só imprime:
<pre>

Código: Selecionar todos

#include <stdio>

void main() {
    printf("Oi");
    return(0);
}
</pre>

E em Python? Aqui está:
<pre>

Código: Selecionar todos

print("Oi")
</pre>

Ahn... só isso? Rico tu ta fazendo errado cara, não pode só ser isso meu!

Claro que pode, e é só isso :D
Quer outro exemplo?
Vamos lá, vou fazer um programa que Recebe um número e então imprime na tela seu sucessor e antecessor:

C
<pre>

Código: Selecionar todos

#include <stdio>

int main() {
    int i;
    int a;
    int b;
    printf("Numero: ");
    scanf("%d",&i);
    a=i-1;
    b=i+1;
    printf("\nAntecessor: %d\n",a);
    printf("Sucessor: %d",b);
    return(0);
}
</pre>

Ufa, lembrando que todos os exemplos estão sendo feitos agora enquanto escrevo este post, por isso se houver algum erro, avise que eu troco.

Python
<pre>

Código: Selecionar todos

n = input("numero: ") # variavel n recebe valor
a = int(n) - 1 # para que python não confunda se n é STRING ou variável eu falo pra ele, AQUI EH INT.
b = int(n) + 1
print("antecessor %d" %(a)) # notaram uma semelhança?
print("sucessor %d"%(b))
</pre>

É, simplesmente pelo fato de que Python foi feito em C ou C++, não vi o código ainda, ele não só interpreta a linguagem python como também é extensível para C (:
É, se tu sabe C, vai se dar muito bem com Python e não terá problemas em entender o código! :D
Depois dou mais exemplos conforme vou estudando e criando algumas coisas. Mas deixo aqui uma dica bem legal (:


Python Docs # Tutoriais e tudo mais.
Script Brasil # Site de uma comunidade de programadores, várias linguagens.
Viva o Linux # Site do Linux, mas na seção de Scripts tem vários códigos legais de Python!

A maioria dos códigos que estão nestes sites, são de Python 2.x e eu apresentei o mais atual Python 3.x, muitos terão que ter leves modificações para funcionar, como ultimo exemplo dado, o código era simplesmente isso "n=n-1 | n=n+1" com as mudanças do Python 3, seu interpretador ficou melhor e inibe alguns problemas comuns do antecessor...

Sim, o código do antecessor e sucessor do Python eu tive que perder 2 minutos pensando, eu colei o código e dei Run, ele me falo: tal linha tem erro, N str não pode ser usado em int (em ingles claro), ae eu lembrei de um erro parecido com JavaScript que eu também deixei aqui em algum lugar do fórum, erro igual, str e int, e fiz o mesmo procedimento para acertar, já que python também leva algumas caracteristicas do Java, a mais notável e sua multi plataforma, não há limites :D

Enviado: Ter Fev 17, 2009 2:37 pm
por Lord DooM1.666
Nossa meu, interessante essa linguagem.
São tantas linguagens que fico confuso em qual começar...
Primeiro ler aquela biblia de c / c++ completa em detalhes e depois vou ver as outras.
è isso ai meu fí, mostre seu RICO conhecimento! :D

Enviado: Ter Fev 17, 2009 2:56 pm
por Z-Man
/nemli
Muito interessante R1c0, pricipalmente pra quem entende :x

Enviado: Ter Fev 17, 2009 3:03 pm
por Lord DooM1.666
Z-Man escreveu:/nemli
Muito interessante R1c0, pricipalmente pra quem entende :x


Da próxima vez. verifique a seção , que no caso é programação! :twisted:

Enviado: Ter Fev 17, 2009 4:18 pm
por Imp Hunter
Imp Hunter escreveu:Programador Python

Abre uma faquinha do canivete e mata o dragão numa punhalada só.
Mas aí descobre que no canivete tinha armas mais legais ainda, e fica eternamente ressuciando o dragão pra matá-lo de diferentes formas, se esquecendo assim da princesa(Imp Hunter says: Eu sem querer faço isso quando to jogando em um wad de armas :lol: )
Agora eu entendi oque isso quer dizer...com um codigo tão flexivel, deve ser louco programar pra Python

Enviado: Ter Fev 17, 2009 5:07 pm
por Fabio914
@Rico: O primeiro exemplo em C tá errado xD Uma função void não retorna valor. 8) Alias , muito boa essa sua introdução.

Enviado: Ter Fev 17, 2009 5:25 pm
por DU0
Isso ae não é usado em celulares hoje em dia?

/nemli pq to na casa da ruiva usando o pc dela stealthmente

Enviado: Ter Fev 17, 2009 8:00 pm
por Rico
@Zman

Muito obrigado pela sua resposta com conteudo...

@Imp

Viu :D

@LORD DOOM

Continue com o C/C++, pq python vc precisa saber uma noção boasica [um poco + q basica] de C

@Fabio914

Vlw :D
Mas será que uma vez vc poderia não cortar meu barato??? =)
Alias, não retorna valor, porém o compilador da apenas um WARNING e funciona de qualquer jeito, é o exemplo mais basico de C e o mais aceito, eu sigo as regras <:

Enviado: Ter Fev 17, 2009 8:13 pm
por Fabio914
@rico : Então coloca a função main como int :wink:

Enviado: Ter Fev 17, 2009 8:23 pm
por Lord DooM1.666
@Rico faltou responder o DUZero! :mrgreen: