Comandos


Introdução


Um comando é uma instrução que o interpretador Python pode executar. Vimos até agora dois tipos de comandos: de exibição (print) e de atribuição.


Quando você digita um comando na linha de comando, o Python o executa e mostra o resultado, se houver um. O resultado de um comando print é a exibição de um valor. Comandos de atribuição não produzem um resultado visível.


Um script normalmente contém uma sequência de comandos. Se houver mais de um comando, os resultados aparecerão um de cada vez, conforme cada comando seja executado. Podemos montar um script usando um editor simples como o Bloco de Notas ou Notepad que permita criar um arquivo texto mas para acelerar as atividades de programação podemos usar um ambiente de desenvolvimento integrado chamado IDE. Existem vários disponíveis para download mas nas próximas aulas poderemos baixar e usar um deles.


Usando o modo interativo


Enquanto isso, vamos usando o modo interativo.


Vejamos o seguinte script, o “script”:

print 1
x = 2
print 2

produz a saída:

1
2


Existem 3 linhas neste script que retratam a operação necessária. Alguns programas podem ser muito grandes, chegando a milhões de linhas. Por isso, um ambiente próprio para a edição, correção, leitura, verificação e depuração é mais adequado.


Comandos do Python


O Python possui muitos comandos disponíveis, como podemos ver na lista abaixo.

print = Imprime uma palavra ou frase.
# = Serve para colocar comentários em apenas uma linha.
% = Serve para indicar a variavel.
%s = Armazena o valor tipo string na variavel.
%d = Armazena um valor tipo numérico na variável.
%r = Armazena um valor de qualquer tipo na variável.
\t  = tabulação
\n = Quebra de linha.
input = Anexa a uma variável o valor informado pelo usuário.
raw_input = Anexa um txt a uma variável.
if = Argumento condicional que significa "se".
if not = Argumento condicional que significa "se não".
else = Argumento condicional que significa "então".
from = Define onde será importado o arquivo.
import = Importa arquivos do sistema. 
argv = Importa arquivos do sistema.
script = Se refere ao arquivo que está sendo criado em python.
prompt = Insere um valor e pede para que o usuário informe um valor.
open = Abre um arquivo do sistema.
read() = Faz a leitura do arquivo.
truncate() = Finaliza o arquivo aberto.
write(line 1) = Armazena o que foi digitado pelo usuario.
close() = Fecha o programa.
len(indata) = Verifica a velocidade de transmissão do arquivo.
def = Define uma função.
seek() = Define a posição do arquivo.


Processando algumas operações


Quando o computador interpreta ou executa uma lista de comandos está preparado para um alto volume de processamento. Isso significa que os comandos podem ser executados numa velocidade espantosa, que logicamente depende do processador do computador mas os atuais são bastante potentes.

Experimente imprimir um cálculo muito complicado que envolva operações básicas como multiplicação, divisão, exponenciação e aguarde o resultado.

Exemplo:

nro = 2**10
print(nro)

Agora tente verificar o tipo do dado:

type(nro)

O resultado mostra que a variável a assumiu o tipo de dado int

Aumentando o valor a ser armazenado

nro = 2**100
print(nro)
type(nro)

Nota-se que o tipo do dado foi alterado para long, ou seja, a variável está armazenando um valor que suportará números maiores. Se elevarmos 2 a 1000 ou mais, veremos que ele mantém o tipo long.

Se brincarmos de elevar 2 a números maiores como 6 ou 7 zeros veremos que ele leva um tempo maior de processamento. (Pelo menos no meu computador :(( ). Em alguns casos podemos nem ter a resposta.

O poder de alguns comandos


Alguns comandos são muito poderosos. Vejamos o comando print utilizando variáveis:

[lclaudio@lntb-031781 ~]$ python 
Python 2.7.8 (default, Apr 15 2015, 09:26:43) 
[GCC 4.9.2 20150212 (Red Hat 4.9.2-6)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> x = "é bela"
>>> print 'A vida ', x
A vida  é bela
>>> 


Podemos usar quebra de linha:

>>> 
>>> print 'A vida\n ', x
A vida
 é bela
>>> 



Funcão input( )


A função input( ) espera o usuário digitar um texto no teclado e pressionar ENTER.

>>> matricula = input()
BTE10101
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "<string>", line 1, in <module>
NameError: name 'EEL10101' is not defined
>>> 

Como resolver isso? Simples

>>> matricula = input() # O erro está no tipo de dado 
'BTE10101'
>>> print matricula
BTE10101
>>> 

Esta chamada de função é avaliada como uma string igual ao texto do usuário e alinha de código anterior atribui o valor dessa string à variável matricula.

Na chamada da função input(), a expressão é avaliada para qualquer string que o usuário digitar.

Se o usuário digitar como 'BTE", a expressão será avaliada como matricula = 'BTE'


Exibindo o nome do usuário


A chamada seguinte a print(), contém a expressão 'Minha matrícula é: ' + matricula

>>> print('Minha matrícula é: ' + matricula)
Minha matrícula é: EEL10101

Os valores inseridos nas expressões de acordo com seu conteúdo e são adequadas segundo seu tamanho

>>> 
>>> matricula = input() 
'BTE100101'
>>> print 'Minha matrícula: ', matricula
Minha matrícula:  BTE100101
>>> 
>>> idade = input()
18
>>> print 'Minha idade é: ',idade
Minha idade é:  18
>>> 
>>> nota = input()
78.0
>>> print 'Minha note: ',nota
Minha note:  78.0
>>> 



Criando uma entrada mais clara para o usuário:

>>> 
>>> matricula = input('Digite a matricula: \n')
Digite a matricula: 
'BTE100101'
>>> print 'Minha matrícula: ', matricula
Minha matrícula:  BTE100101
>>> 
>>> idade = input('Digite a idade: ')
Digite a idade: 18
>>> 
>>> 


Exercícios


  1. Entenda o comando \t e monte um exemplo
  2. Usando x e y como variáveis e atribuindo 10 e 20 a elas, imprima a expressão x = 10 em uma linha e y = 2o em outra usando apenas um comando print
  3. Por que a expressão a seguir causa um erro? Como você corrigi-la? 'Eu tenho ' + 3 + ' cachorros em casa.'
  4. Mostre na tela, da forma como está abaixo, a partir da digitação no teclado:
  • Nome:
  • Idade:
  • Cidade de Nascimento:
  • Estado
  • Sexo: