Escolar Documentos
Profissional Documentos
Cultura Documentos
13
3.9.13 Vai
Muitos dos exemplos neste manual, mesmo aqueles inseridos no prompt interativo, incluem comentários.
Comentários em Python começam com o caractere hash
# , e se estendem até o final da linha física. Um
comentário pode aparecer no início de uma linha ou após um espaço em branco ou código, mas não dentro
de uma string literal. Um caractere hash dentro de uma string literal é apenas um caractere hash. Como os
comentários são para esclarecer o código e não são interpretados pelo Python, eles podem ser omitidos ao
digitar exemplos.
Alguns exemplos:
3.1.1. Números¶
O interpretador funciona como uma calculadora simples: você pode digitar uma expressão nele e ele
escreverá o valor. A sintaxe da expressão é direta: os operadores + , - e funcionam * como / na maioria das
outras linguagens (por exemplo, Pascal ou C); parênteses ( () ) podem ser usados para agrupamento. Por
exemplo:
>>> 2 + 2
>>>
4
>>> 50 - 5*6
20
5.0
1.6
Os números inteiros (ex 2 . , 4 , 20 ) possuem tipo int , aqueles com parte fracionária (ex 5.0 . , 1.6 )
possuem tipo
float . Veremos mais sobre tipos numéricos posteriormente no tutorial.
A divisão ( / ) sempre retorna um float. Para fazer a divisão do piso e obter um resultado inteiro (descartando
qualquer resultado fracionário) você pode usar o //
operador; para calcular o resto você pode usar % :
https://docs.python.org/3.9/tutorial/introduction.html#lists 1/9
04/07/2022 19:26 3. Uma introdução informal ao Python — documentação do Python 3.9.13
3.9.13 Vai
>>>
17
>>> 5 ** 2 # 5 squared
>>>
25
128
O sinal de igual ( = ) é usado para atribuir um valor a uma variável. Depois, nenhum resultado é exibido antes
do próximo prompt interativo:
>>> width = 20
>>>
>>> height = 5 * 9
900
Se uma variável não for “definida” (atribuída a um valor), tentar usá-la resultará em um erro:
Há suporte completo para ponto flutuante; operadores com operandos de tipo misto convertem o operando
inteiro em ponto flutuante:
12.5625
>>> price + _
113.0625
>>> round(_, 2)
113.06
Esta variável deve ser tratada como somente leitura pelo usuário. Não atribua explicitamente um valor a ela -
você criaria uma variável local independente com o mesmo nome, mascarando a variável interna com seu
comportamento mágico.
Além de int e float , o Python suporta outros tipos de números, como Decimal e Fraction . Python
também tem suporte embutido para números complexos e usa o sufixo j ou J para indicar a parte imaginária
https://docs.python.org/3.9/tutorial/introduction.html#lists 2/9
04/07/2022 19:26 3. Uma introdução informal ao Python — documentação do Python 3.9.13
também tem suporte embutido para números complexos e usa o sufixo j ou J para indicar a parte imaginária
3.9.13
(por exemplo 3+5j , ). Vai
3.1.2. Cordas
Além de números, o Python também pode manipular strings, que podem ser expressas de várias maneiras.
Eles podem ser colocados entre aspas simples ( '...' ) ou aspas duplas ( "..." ) com o mesmo resultado
[2] . \ pode ser usado para escapar aspas:
"doesn't"
"doesn't"
No interpretador interativo, a string de saída é colocada entre aspas e os caracteres especiais são escapados
com barras invertidas. Embora às vezes isso possa parecer diferente da entrada (as aspas podem mudar), as
duas strings são equivalentes. A string é colocada entre aspas duplas se a string contiver aspas simples e
sem aspas duplas, caso contrário, será colocada entre aspas simples. A print() função produz uma saída
mais legível, omitindo as aspas e imprimindo caracteres de escape e especiais:
First line.
Second line.
Se você não quiser que os caracteres precedidos por \ sejam interpretados como caracteres especiais, você
pode usar strings brutas adicionando um r antes da primeira aspa:
ame
C:\some\name
Os literais de string podem abranger várias linhas. Uma maneira é usar aspas triplas:
"""...""" ou
'''...''' . O fim das linhas é incluído automaticamente na string, mas é possível evitar isso adicionando
um \ no final da linha. O exemplo a seguir:
print("""\
""")
produz a seguinte saída (observe que a nova linha inicial não está incluída):
https://docs.python.org/3.9/tutorial/introduction.html#lists 3/9
04/07/2022 19:26 3. Uma introdução informal ao Python — documentação do Python 3.9.13
produz a seguinte saída (observe que a nova linha inicial não está incluída):
3.9.13 Vai
'unununium'
Dois ou mais literais de string (ou seja, aqueles entre aspas) próximos um do outro são automaticamente
concatenados.
Esse recurso é particularmente útil quando você deseja quebrar strings longas:
>>> text
'Put several strings within parentheses to have them joined together.'
Isso só funciona com dois literais, não com variáveis ou expressões:
prefix 'thon'
('un' * 3) 'ium'
Strings podem ser indexadas (subscritas), com o primeiro caractere tendo índice 0. Não há um tipo de
caractere separado; um caractere é simplesmente uma string de tamanho um:
'P'
'n'
Os índices também podem ser números negativos, para começar a contar da direita:
d[ 2] # d l t h t
https://docs.python.org/3.9/tutorial/introduction.html#lists 4/9
04/07/2022 19:26 3. Uma introdução informal ao Python — documentação do Python 3.9.13
>>> word[-2] # second-last character
'o'
3.9.13 Vai
>>> word[-6]
'P'
Além da indexação, o fatiamento também é suportado. Enquanto a indexação é usada para obter caracteres
individuais, o fatiamento permite obter a substring:
'tho'
Os índices de fatia têm padrões úteis; um primeiro índice omitido tem como padrão zero, um segundo índice
omitido tem como padrão o tamanho da string que está sendo fatiada.
'on'
'on'
Observe como o início é sempre incluído e o fim sempre excluído. Isso garante que é sempre igual a : s[:i]
+ s[i:] s
'Python'
Uma maneira de lembrar como as fatias funcionam é pensar nos índices como apontando
entre os
caracteres, com a borda esquerda do primeiro caractere numerada como 0. Então a borda direita do último
caractere de uma string de n caracteres tem o índice n , por exemplo:
+---+---+---+---+---+---+
| P | y | t | h | o | n |
+---+---+---+---+---+---+
0 1 2 3 4 5 6
-6 -5 -4 -3 -2 -1
A primeira linha de números fornece a posição dos índices 0…6 na string; a segunda linha fornece os índices
negativos correspondentes. A fatia de i a
j consiste em todos os caracteres entre as arestas rotuladas i e j ,
respectivamente.
Para índices não negativos, o comprimento de uma fatia é a diferença dos índices, se ambos estiverem
dentro dos limites. Por exemplo, o comprimento de word[1:3] é 2.
No entanto índices de fatia fora do intervalo são tratados normalmente quando usados para fatiar:
https://docs.python.org/3.9/tutorial/introduction.html#lists 5/9
04/07/2022 19:26 3. Uma introdução informal ao Python — documentação do Python 3.9.13
No entanto, índices de fatia fora do intervalo são tratados normalmente quando usados para fatiar:
3.9.13 Vai
>>> word[4:42]
>>>
'on'
>>> word[42:]
''
As strings do Python não podem ser alteradas — elas são imutáveis . Portanto, atribuir a uma posição
indexada na string resulta em um erro:
'Pypy'
>>> s = 'supercalifragilisticexpialidocious'
>>>
>>> len(s)
34
Veja também:
3.1.3. Listas
Python conhece vários tipos de dados compostos , usados para agrupar outros valores. A mais versátil é a list
, que pode ser escrita como uma lista de valores separados por vírgula (itens) entre colchetes. As listas
podem conter itens de tipos diferentes, mas geralmente todos os itens têm o mesmo tipo.
https://docs.python.org/3.9/tutorial/introduction.html#lists 6/9
04/07/2022 19:26 3. Uma introdução informal ao Python — documentação do Python 3.9.13
Assim como as strings (e todos os outros tipos de sequência integrados ), as listas podem ser indexadas e
divididas:
>>> squares[-1]
25
Todas as operações de fatia retornam uma nova lista contendo os elementos solicitados. Isso significa que a
fatia a seguir retorna uma
cópia superficial da lista:
>>> squares[:]
>>>
[1, 4, 9, 16, 25]
Ao contrário das strings, que são imutáveis , as listas são do tipo mutável , ou seja, é possível alterar seu
conteúdo:
64
>>> cubes
Você também pode adicionar novos itens no final da lista, usando o append() método (veremos mais sobre
métodos posteriormente):
>>> cubes
A atribuição a fatias também é possível, e isso pode até alterar o tamanho da lista ou limpá-la completamente:
>>> letters
>>> letters[2:5] = []
>>> letters
>>> # clear the list by replacing all the elements with an empty list
>>> letters[:] = []
https://docs.python.org/3.9/tutorial/introduction.html#lists 7/9
04/07/2022 19:26 3. Uma introdução informal ao Python — documentação do Python 3.9.13
e e s[ ] []
>>> letters
3.9.13 Vai
[]
É possível aninhar listas (criar listas contendo outras listas), por exemplo:
>>> x = [a, n]
>>> x
>>> x[0]
['a', 'b', 'c']
>>> x[0][1]
'b'
... a, b = 0, 1
... print(a)
... a, b = b, a+b
...
>>> i = 256*256
>>>
>>> print('The value of i is', i)
The keyword argument end can be used to avoid the newline after the output,
or end the output with a
different string:
>>> a, b = 0, 1
>>>
>>> while a < 1000:
... a, b = b, a+b
...
0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,
Footnotes
[2] Ao contrário de outros idiomas, caracteres especiais como, por exemplo, \n têm o mesmo significado
com aspas simples ( '...' ) e duplas ( "..." ). A única diferença entre os dois é que entre aspas
simples você não precisa escapar " (mas você tem que escapar \' ) e vice-versa.
https://docs.python.org/3.9/tutorial/introduction.html#lists 9/9