Python - sintaxe básica
A linguagem Python tem muitas semelhanças com Perl, C e Java. No entanto, existem algumas diferenças definidas entre os idiomas.
Primeiro programa Python
Vamos executar programas em diferentes modos de programação.
Programação de modo interativo
Invocar o interpretador sem passar um arquivo de script como parâmetro traz o seguinte prompt -
$ python
Python 2.4.3 (#1, Nov 11 2010, 13:34:43)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-48)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Digite o seguinte texto no prompt do Python e pressione Enter -
>>> print "Hello, Python!"
Se você está executando uma nova versão do Python, então você precisa usar a instrução print com parênteses como em print ("Hello, Python!");. No entanto, na versão 2.4.3 do Python, isso produz o seguinte resultado -
Hello, Python!
Programação em modo script
Invocar o interpretador com um parâmetro de script inicia a execução do script e continua até que o script seja concluído. Quando o script é concluído, o intérprete não está mais ativo.
Vamos escrever um programa Python simples em um script. Arquivos Python têm extensão.py. Digite o seguinte código-fonte em um arquivo test.py -
print "Hello, Python!"
Assumimos que você tem um interpretador Python definido na variável PATH. Agora, tente executar este programa da seguinte maneira -
$ python test.py
Isso produz o seguinte resultado -
Hello, Python!
Vamos tentar outra maneira de executar um script Python. Aqui está o arquivo test.py modificado -
#!/usr/bin/python
print "Hello, Python!"
Presumimos que você tenha um interpretador Python disponível no diretório / usr / bin. Agora, tente executar este programa da seguinte maneira -
$ chmod +x test.py # This is to make file executable
$./test.py
Isso produz o seguinte resultado -
Hello, Python!
Identificadores Python
Um identificador Python é um nome usado para identificar uma variável, função, classe, módulo ou outro objeto. Um identificador começa com uma letra de A a Z ou a a z ou um sublinhado (_) seguido por zero ou mais letras, sublinhados e dígitos (0 a 9).
Python não permite caracteres de pontuação como @, $ e% nos identificadores. Python é uma linguagem de programação que diferencia maiúsculas de minúsculas. Portanto,Manpower e manpower são dois identificadores diferentes em Python.
Aqui estão as convenções de nomenclatura para identificadores Python -
Os nomes das classes começam com uma letra maiúscula. Todos os outros identificadores começam com uma letra minúscula.
Iniciar um identificador com um único sublinhado inicial indica que o identificador é privado.
Iniciar um identificador com dois sublinhados iniciais indica um identificador fortemente privado.
Se o identificador também terminar com dois sublinhados à direita, o identificador é um nome especial definido pelo idioma.
Palavras reservadas
A lista a seguir mostra as palavras-chave Python. Estas são palavras reservadas e você não pode usá-las como constantes ou variáveis ou qualquer outro nome de identificador. Todas as palavras-chave Python contêm apenas letras minúsculas.
e | exec | não |
afirmar | finalmente | ou |
pausa | para | passar |
classe | de | impressão |
continuar | global | levantar |
def | E se | Retorna |
del | importar | experimentar |
elif | dentro | enquanto |
outro | é | com |
exceto | lambda | produção |
Linhas e recuo
Python não fornece chaves para indicar blocos de código para definições de classe e função ou controle de fluxo. Os blocos de código são denotados por recuo de linha, que é rigidamente aplicado.
O número de espaços no recuo é variável, mas todas as instruções dentro do bloco devem ser recuadas da mesma forma. Por exemplo -
if True:
print "True"
else:
print "False"
No entanto, o bloco a seguir gera um erro -
if True:
print "Answer"
print "True"
else:
print "Answer"
print "False"
Assim, em Python, todas as linhas contínuas recuadas com o mesmo número de espaços formariam um bloco. O exemplo a seguir tem vários blocos de instrução -
Note- Não tente entender a lógica neste momento. Apenas certifique-se de ter entendido os vários bloqueios, mesmo que não existam chaves.
#!/usr/bin/python
import sys
try:
# open file stream
file = open(file_name, "w")
except IOError:
print "There was an error writing to", file_name
sys.exit()
print "Enter '", file_finish,
print "' When finished"
while file_text != file_finish:
file_text = raw_input("Enter text: ")
if file_text == file_finish:
# close the file
file.close
break
file.write(file_text)
file.write("\n")
file.close()
file_name = raw_input("Enter filename: ")
if len(file_name) == 0:
print "Next time please enter something"
sys.exit()
try:
file = open(file_name, "r")
except IOError:
print "There was an error reading file"
sys.exit()
file_text = file.read()
file.close()
print file_text
Declarações de várias linhas
As instruções em Python geralmente terminam com uma nova linha. Python, entretanto, permite o uso do caractere de continuação de linha (\) para indicar que a linha deve continuar. Por exemplo -
total = item_one + \
item_two + \
item_three
As instruções contidas nos colchetes [], {} ou () não precisam usar o caractere de continuação de linha. Por exemplo -
days = ['Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday']
Cotação em Python
Python aceita aspas simples ('), duplas (") e triplas (' '' ou" "") para denotar literais de string, desde que o mesmo tipo de aspas inicie e termine a string.
As aspas triplas são usadas para estender a string em várias linhas. Por exemplo, todos os itens a seguir são legais -
word = 'word'
sentence = "This is a sentence."
paragraph = """This is a paragraph. It is
made up of multiple lines and sentences."""
Comentários em Python
Um sinal de hash (#) que não está dentro de um literal de string inicia um comentário. Todos os caracteres após o # e até o final da linha física fazem parte do comentário e o interpretador Python os ignora.
#!/usr/bin/python
# First comment
print "Hello, Python!" # second comment
Isso produz o seguinte resultado -
Hello, Python!
Você pode digitar um comentário na mesma linha após uma declaração ou expressão -
name = "Madisetti" # This is again comment
Você pode comentar várias linhas da seguinte forma -
# This is a comment.
# This is a comment, too.
# This is a comment, too.
# I said that already.
Seguir string entre aspas triplas também é ignorado pelo interpretador Python e pode ser usado como um comentário multilinha:
'''
This is a multiline
comment.
'''
Usando linhas em branco
Uma linha contendo apenas espaços em branco, possivelmente com um comentário, é conhecida como linha em branco e o Python a ignora totalmente.
Em uma sessão de intérprete interativa, você deve inserir uma linha física vazia para encerrar uma instrução multilinha.
Esperando pelo Usuário
A seguinte linha do programa exibe o prompt, a instrução dizendo "Pressione a tecla Enter para sair" e espera que o usuário execute uma ação -
#!/usr/bin/python
raw_input("\n\nPress the enter key to exit.")
Aqui, "\ n \ n" é usado para criar duas novas linhas antes de exibir a linha real. Assim que o usuário pressiona a tecla, o programa termina. Este é um bom truque para manter uma janela de console aberta até que o usuário termine de usar um aplicativo.
Várias declarações em uma única linha
O ponto-e-vírgula (;) permite várias instruções em uma única linha, visto que nenhuma instrução inicia um novo bloco de código. Aqui está um recorte de amostra usando o ponto e vírgula -
import sys; x = 'foo'; sys.stdout.write(x + '\n')
Vários grupos de extrato como suítes
Um grupo de instruções individuais, que formam um único bloco de código, são chamadas suitesem Python. Instruções compostas ou complexas, como if, while, def e class requerem uma linha de cabeçalho e um conjunto.
As linhas de cabeçalho começam a declaração (com a palavra-chave) e terminam com dois pontos (:) e são seguidas por uma ou mais linhas que compõem o conjunto. Por exemplo -
if expression :
suite
elif expression :
suite
else :
suite
Argumentos de linha de comando
Muitos programas podem ser executados para fornecer algumas informações básicas sobre como devem ser executados. Python permite que você faça isso com -h -
$ python -h
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Options and arguments (and corresponding environment variables):
-c cmd : program passed in as string (terminates option list)
-d : debug output from parser (also PYTHONDEBUG=x)
-E : ignore environment variables (such as PYTHONPATH)
-h : print this help message and exit
[ etc. ]
Você também pode programar seu script de forma que ele aceite várias opções. Argumentos da linha de comando é um tópico avançado e deve ser estudado um pouco mais tarde, uma vez que você tenha examinado o restante dos conceitos do Python.