Mandar um café pro programador

Pode me ajudar a transformar cafeína em código?

Tipos de dados em Python - Números, Strings e Booleanos

Veja esta página que está lendo. É um amontoado de texto.
Texto, especificamente, cada caractere, é um tipo de dado, um tipo de informação.

Lá nos sistemas da NASA ou de um banco, tem uma porção de números: número da conta, quanto cada cliente tem, quanto pediu de empréstimo, salário dos funcionários...ou seja, temos aí outro tipo de dado: números.


Leia também:

Eu quero obter certificado Python Progressivo e Entrar no Mercado de Trabalho!



A computação serve basicamente para isso: trabalhar com dados. Tudo que a programação faz é isso, mexer com dados, informações, manipular, procurar, identificar, exibir isso, calcular aquilo...e é isso que iremos aprender agora, neste tutorial de nosso Curso de Python.

Nessa aula, não vamos espionar a conta bancária do Trump, invadir os sistemas da NASA nem atrapalhar os planos da Al-Qaeda, como fazemos em outros tutoriais. Vai ser um pouco mais teórica, mas de absoluta importância para você se tornar um programador Python.

Números em Python

O tipo mais básico e importante de dado é, sem dúvida, os números.
Se o universo fosse um livro, certamente ele seria escrito com números e linguagem utilizada seria a Matemática.

É até desnecessário falar aqui da importância dos números, mas pode ter certeza que existem satélites orbitando por ai pelo espaço, sendo controlado por softwares, que processam dados númericos, inclusive usando Python.



Números inteiros

Números inteiros são aqueles que não tem parte decimal, como 0, os positivos (1, 2, 3, 4, 5, ..., 2112...) e os negativos (-1, -2, -3, ..., -2112, ...).

Se você usar só números inteiros no Python, ele vai te fornecer números inteiros como resultado:

Curso de Python online


Dentro destes, tem aqueles chamados inteiros longos, para representar valores realmente estratosféricos como 111111111111111111111L (tem o L no final, de large). Dependendo do que quiser fazer, pode ser necessário usar inteiros longos, como para descobrir números primos novos (muito importantes em criptografia de dados).

Calcule: 111111111111111111111111L + 222222222222222222222222L



Números flutuantes

São números que voam, flutuam...brincadeira, nada a ver.
É assim que são chamado os números decimais, vulgo 'números quebrados'.

ATENÇÃO ABSOLUTA E MÁXIMA
Em português, usamos a vírgula para representar números decimais: R$ 1,99 mas em outros países é o ponto. E é o ponto que se usa em programação. U$ 1.99

Assim, os números flutuantes são escritos assim:
0.5
1.5
21.12

Se ao menos um de seus dados usados for decimal, o Python já te dá o resultado decimal. Se usar vírgula ao invés de ponto, vai dar problema ou coisas nada a ver:

Números flutuantes em Python

Outras bases decimais

Estamos falando, até o momento, de números na base decimal, que a humanidade costuma usar.

Mas há outros tipos de bases decimais, como a binária, octal e hexadecimal.
Os números binários começam com '0b' no início, octal com '0o' (zero e letra o) e os hexadecimais com '0x' no início.

O bacana é que se você digitar um binário, octal ou hexadecimal no interpretador, ele já converte automaticamente pro decimal, veja:

Binário, octal e hexadecimal

Veja que o número 10 no sistema binário equivale ao valor 2 em nosso sistema decimal.
Agora você entende e está liberado para fazer a seguinte piadinha: existem 10 tipos de pessoas, as que entendem código binário e as que não entendem.

Como programar em Python

Já se quiser saber quanto vale um número decimal em binário, digite bin(x), onde x é o número que deseja saber. Para octal, oct(x) e hexadecimal hex(x).

Exercício: nos comentários, escreva sua idade no sistema binário, octal e hexadecimal.

Números complexos

Se já fez segundo grau, certamente já ouviu falar nos números complexos (números fora do plano real, possuem parte real e parte imaginária).

A primeira parte é a real, e a que está com o j (número imaginário), é a imaginária.

Calcule a soma de dois números complexos no Python:
(1+2j) + (3 + 4j)

Qual foi o resultado?

Agora você pode dizer que está estudando um assunto complexo em programação.

String - Texto Python

Outro importante tipo de dados, são as strings, que nada mais são que um conjunto de caracteres.

Seu nome é uma string, seu endereço também, o endereço de um site é uma string, tratamos o IP de um usuário como uma string. Ou seja, todo texto ou símbolo, pode ser tratado como uma string.

Um único caractere, por exemplo, como 'a' ou 'b' é uma string.
1 é um número, mas '1' é uma string.

Somar 1+1 no Python, é ok, afinal, são apenas dois números.
Agora experimente fazer 1 + '1' (lembre-se: strings são representadas entre aspas simples ou duplas), o resultado vai ser um erro:

Apostila de Python para download

Ele alerta que não é possível somar um inteiro com uma string.
Ora, isso faz sentido, não é mesmo? É como somar uma banana com maçã.

Iremos dedicar tooooda uma seção de nosso curso para estudar especialmente as strings, afinal, texto é algo de suma importância.

Você pode pegar, por exemplo, o código HTML de uma página, é uma string gigante e tentar achar lá vídeos, fotos, áudio e criar um programa em Python que faz download de mídias. Para isso, vai ter que 'tratar' a string, achando as coisas que interessa.

É algo bem, mas bem interessante mesmo, trabalhar com strings, dá pra fazer um 'estrago', um programador que sabe lidar bem com elas.

Obviamente, você vai aprender absolutamente tudo, em nosso Curso Python Progressivo, não estranhe se começar a receber propostas de trabalho para NASA, Casa Branca, Estação Espacial, ser um hacker do governo Chinês...

Booleanos - True e False

Certamente você já ouviu falar que tudo em computação, é uma porção de 0 e 1.

Sabe os filmes que gosta de assistir? Tudo uma combinação de 0 e 1.
Uma foto sua fingindo estar meditando na natureza? Tudo 0 e 1.
Sua música favorita? 0 e 1.

Na verdade, um computador não tem a menor ideia do que são números, strings ou nada disso, ele só entende 1 e 0, que na verdade é uma interpretação das voltagens (alta chamamos de 1, sem voltagem é 0).

Pois bem, como somos programadores Python profissionais, vamos nos aprofundar nisso.

Existe um tipo de dado em Python chamado booleano, ele é bem simples, só pode assumir dois valores: True (verdadeiro) e False (dã, adivinha).

Pronto. Só isso.
Se convenciona que 1 é verdadeiro, True.
E 0 é falso, False.

Um programador não fala 'falsiane' e sim 'zeriane', xingamos dizendo 'você é muito 0, não confio em você'. Já se quiser elogiar alguém, diga 'você é muito 1, por isso me apaixonei'.

Vamos ver como o Python interpreta esse tipo de dado.
1 é maior 2? E 3 é maior que 2 ?

Tutorial de Python

Python é o(a) namorado(a) ideal, tudo que você pergunta ele responde e com sinceridade, sempre falando a verdade.

Exercício: descubra porque chamamos de 'boolean', esse tipo de dado.
Sim, um bom programador é aquele capaz de pesquisar, fuçar e descobrir as coisas por si só.

Outros tipos em Python

Na verdade verdadeira, sendo bem rigoroso, os dados em Python são objetos.
Você vai entender melhor isso quando estudarmos orientação à objetos.

Quando falamos em números, strings, caracteres, booleanos...falamos de alguns tipos de dados, os principais e mais utilizados.
Porém, há muitos outros, que inclusive iremos usar bastante (mesmo), mais a frente em nosso curso de Python, como:
  • Arquivos
  • Tuplas
  • Listas
  • Dicionários

Todos eles são dados básicos e internos.
São internos, porque já são incorporados no Python.

O Python é tão foda, mas tão foda, que vamos poder até mesmo criar nosso próprio tipo de dado, nossa própria estrutura de informação.

Se você quiser que 'queijo' seja um tipo de dado, como número é um dado, a letra 'A' é um dado, então ele vai ser dado, e vai ser como você quiser, comportar como você quiser e ponto final.

Se quiser que a raiz quadrada de um queijo seja leite, vai ser, pois você define o que é seu dado e como ele se comporta.

Mas por hora, vamos deixar isso apenas como curiosidade.
Sigamos nosso curso...

21 comentários:

  1. Exercicio 1:
    '0b11000'
    '030'
    '0x18'

    Exercicio 2:
    Chamado booleano em homenagem a George Boole, que definiu um sistema de lógica algébrica pela primeira vez na metade do século XIX.

    ResponderExcluir
  2. '0b110000'
    '0o60'
    '0x30'
    Chamado boolean em homenagem a George Boole, que definiu um sistema de lógica algébrica pela primeira vez na metade do século XIX

    ResponderExcluir
  3. 0b110000
    0o60
    0x30

    Chamado boolean em homenagem a George Boole, que definiu um sistema de lógica algébrica pela primeira vez na metade do século XIX,

    ResponderExcluir
  4. Tenho 44 anos e aqui está os resultados:
    0o54 --> Octal
    0b101100 --> Binário
    0x2c --> Hexadecimal

    ResponderExcluir
  5. binario --> '0b10001'
    Octal --> '0o21'
    Hexadecimal --> '0x11'

    ResponderExcluir
  6. print("Sou um vampiro tenho...")
    print("idade em binario "+(bin(1000)))
    print("idade em octal "+oct(1000))
    print("idade em hexadecimal "+hex(1000))

    ResponderExcluir
  7. bin(14)
    '0b1110'
    oct(14)
    '0o16'
    hex(14)
    '0xe'

    ResponderExcluir
  8. bin(20)
    '0b10100'
    oct(20)
    '0o24'
    hex(20)
    '0x14'

    ResponderExcluir
  9. binario = idade = bin (20)
    print('sua idade em binário:', binario)

    hexadecimal = idade = hex (20)
    print('sua idade em hexadecimal:',hexadecimal)

    octal = idade = oct(20)
    print('sua idade em hexadecimal:', octal)

    ResponderExcluir
  10. numero complexos (4+6j)

    ResponderExcluir

Bora fazer evoluir o ensino da Programação no Brasil ?

Que tal apoiar e fazer crescer o ensino da programação no Brasil ?

Ajudar nosso país a crescer e se desenvolver cada vez mais, tecnologicamente?

Clica abaixo pra saber mais!

Apoiar o Projeto Progressivo