Ver Feed RSS

root@blog:/# chmod o+r *

[Curso de Python] Produzindo saídas - parte 1

Avalie este Post de Blog

Antes de prosseguir leia os artigos anteriores aqui



Nesse artigo de hoje vamos aprender como gerar saídas. Ja estamos fazendo isso a um tempo utilizando o comando print mas de uma forma bem limitada!

Produzindo saídas



Como disse, já vimos o básico do comando print:
Código :
>>> print 'Ola mundo!'
Ola mundo
Também já vimos que o print pode imprimir qualquer tipo de dado sem a necessidade de expecificar nada diferente:
Código :
>>> inteiro = 42
>>> ponto_flutuante = 12.75
>>> tupla = (1, 2, 23.5, 'fim')
>>> lista = ['uma', 'lista', 12, 33]
>>> dicionario = {'a':1, 'b':2}
>>>
>>> print inteiro
42
>>> print ponto_flutuante
12.75
>>> print tupla
(1, 2, 23.5, 'fim')
>>> print lista
['uma', 'lista', 12, 33]
>>> print dicionario
{'a': 1, 'b': 2}
>>>
Mas o comando print tem um potencial muito maior. Vamos ver alguns exemplos a seguir.


Utilizando a soma (+)

É possível somar strings dentro do argumento do print. Vamos ver um exemplo:
Código :
>>> site = 'Under-Linux'
>>> print 'Eu acesso a ' + site + ' todo dia'
Eu acesso a Under-Linux todo dia
>>>
Como eu disse, podemos somar strings. O que acontece se tentarmos misturar outras coisas com a string? Um erro:
Código :
>>> idade = 25
>>> print 'Minha idade e '+idade
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: cannot concatenate 'str' and 'int' objects
>>>
O sinal de mais (+) soma somente strings nunca se esqueçam disso. Então vamos ter que converter o inteiro para string:
Código :
>>> idade = 25
>>> print 'Minha idade e '+str(idade)
Minha idade e 25
>>>
Qualquer variável pode ser convertida para string utilizando a função str():
Código :
>>> idade = 25
>>> altura = 1.80
>>> tags = ['Editor', 'Moderador', 'Consultor']
>>>
>>> print 'Minha idade e '+str(idade)
Minha idade e 25
>>> print 'Minha altura e '+str(altura)
Minha altura e 1.8
>>> print 'Minha altura e '+str(altura)+'m'
Minha altura e 1.8m
>>> print 'Minhas tags na Under sao: '+str(tags)
Minhas tags na Under sao: ['Editor', 'Moderador', 'Consultor']
>>>
Utilizando a vírgula (,)

É concatenar uma string com qualquer outro tipo utilizando a vírgula. Vamos ver um exemplo:
Código :
>>> resposta = 42
>>> print 'A resposta para a pergunta fundamental sobre a vida, o universo e tudo mais é',resposta
A resposta para a pergunta fundamental sobre a vida, o universo e tudo mais é 42
>>>
O real funcionamento da vírgula é que ela converte automaticamente o que vem depois dela para string e adiciona um espaço antes. Esse detalhe do espaço é bem delicado:
Código :
>>> print 'string'+str(42)+'string'
string42string
>>> print 'string '+str(42)+' string'
string 42 string
>>> print 'string',42,'string'
string 42 string
>>>
Como podem ver eu tive que adicionar os espaços manualmente quando utilizei a soma, já as vírgulas fazem isso para mim. As vírgulas também convertem qualquer tipo:
Código :
>>> print 'Hoje e dia',27
Hoje e dia 27
>>> print 'Tenho que comprar:',['Laranja', 'Manga', 'Uva']
Tenho que comprar: ['Laranja', 'Manga', 'Uva']
>>> print 'Mas so tenho R$',12
Mas so tenho R$ 12
>>>
Amanha vamos ver como formatar as strings de uma maneira mais 'pythoniana'.
Até mais...

Atualizado 01-09-2010 em 09:09 por Magnun

Categorias
Python , Artigos , Artigos , Cursos , Curso de Python

Comentários

Página 1 de 2 12 ÚltimoÚltimo
  1. Avatar de ilsahec
    boa aula
  2. Avatar de fabiocs
    show de bola...
  3. Avatar de alinef
    Muito legal! Eu já vinha estudando python por conta própria há alguns meses, mas essa foi novidade para mim! Parabéns :)
  4. Avatar de Magnun
    Obrigado alinef, não esqueça de verificar o restante do curso, tenho certeza que você encontrará outras novidades!
  5. Avatar de Humildade
    Olá magnun!

    Estou usando o compilador do python 3.1, e durante a execução de um dos exemplos que você nos passou, esta apresentando este erro:

    >>> idade = 25
    >>> print 'Minha idade e '+str(idade)
    SyntaxError: invalid syntax

    Será que estou a fazer algo de errado?
    Ou teve alguma alteração na versão que estou utilizando?

    Desde já agradeço!
    Abs
Página 1 de 2 12 ÚltimoÚltimo

+ Enviar Comentário




Visite: BR-Linux ·  VivaOLinux ·  Dicas-L