Variáveis

Fazer computação "no ar" é divertido e tudo, mas suponha que você quer armazenar os resultados de uma computação. Para isto que são as variáveis.

Uma variável é como uma caixa onde você pode armazenar números, strings e outros objetos complexos que aprenderemos a usar neste tutorial.

Em Python, os nomes das variáveis devem começar com uma letra (maiúscula ou minúscula) ou um underscore e só pode ser constituído por letras (maiúscula ou minúscula), underscores e dígitos. Por exemplo, os seguintes são todos os nomes de variáveis válidos :

  • username
  • _password
  • article_content
  • menu_2
  • theGreatestVariableEver

Isto, pelo contrário, não são nomes válidos

  • is-ok? (contém um traço e um ponto de interrogação)
  • 2values (não começa com um underscore ou uma letra)

Para começar a usar uma variável, você simplesmente atribui um valor a ela. Para fazer isso, você escreve o nome da variável, seguido de um sinal de igual (=) e o valor (ou expressão) que voce quer atribuir.

>>> x = 42
>>> sum = 30 + 5

Para verificar o que está dentro de uma variável ao usar o interpretador interativo, Você apenas escreve o nome da variável e pressione enter.

>>> x
42
>>> sum
35

Você pode usar variáveis dentro de expressões.

>>> sum_minus_x = sum - x
>>> sum_minus_x
-7

E você pode, claro, imprimir variáveis com a função de impressão (print).

>>> print(sum)
35

É um bom momento para ensinar-lhe sobre a função de entrada (input). O que ela faz é pedir ao usuário uma string e retorna-la. Suponha, por exemplo, que você precise perguntar o nome ao usuário para uma saudação. Como faríamos isso?

>>> name = input("What's your name? ")
What's your name? Jane
>>> print("Hello " + name)
Hello Jane

Aqui, o texto é o que o usuário entrou.

Há algumas coisas novas acontecendo com esse último trecho. Vamos dividi-lo um pouco.

Em primeiro lugar, a função de entrada aceita um parâmetro, isso será o que o usuário verá quando solicitado pelo input. Neste caso, estamos pedindo seu nome. Observe o espaço em branco após o ponto de interrogação. Se você não colocá-lo lá, o usuário começará a digitar logo após o ponto de interrogação, o que não é bom de ver.

Então, queremos atribuir o resultado retornado pela função input  (i.e. o que o usuário digitou) para a variável name. Observe que input para de ler assim que o usuário pressiona enter, mas não se preocupa com os espaços.

Uma vez que o usuário pressiona entrar, imprimimos(print) "Hello " seguido do nome que o usuário escreveu. Observe que, ao manusear strings, o sinal de mais (+) significa "me dê a concatenação dessas duas strings". Esta não é a melhor maneira de compor strings para mostrar ao usuário. Vamos cobrir a melhor maneira de fazer isso em outro tutorial.

Vamos fazer outra coisa. Vamos pedir ao usuário dois números e somá-los.

>>> a = input("Write the first number: ")
Write the first number: 10
>>> b = input("Write the second number: ")
Write the second number: 23
>>> sum = a + b                             
>>> print ("Their sum is " + sum)
Their sum is 1023

Espere, o que? Ah, esquecemos de lhe dizer que a função de input retorna as strings!

Há uma diferença entre uma string e um número. A string "42" não é o mesma que o número 42 . É realmente o caractere '4' seguido pelo caractere '2'. O interpretador do Python não sabe o que está dentro de uma string, então ele trata exatamente como teria tratado as strings "Hello" e "World", então o sinal de mais ( + ) apenas as concatena.

Mas não se preocupe, há uma função para isso. É chamada int. A função int Leva uma string como parâmetro e a converte em um número.

>>> int("42")
42

Observe que não há nenhuma cotação no resultado. Então vamos alterar nosso exemplo anterior.

>>> a = input("Write the first number: ")
Write the first number: 10
>>> b = input("Write the second number: ")
Write the second number: 23
>>> sum = int(a) + int(b)
>>> print ("Their sum is " + sum)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: Can't convert 'int' object to str implicitly

Não se preocupe se você não entender o que o interpretador está dizendo aqui . Aprenderemos a reconhecer e lidar com esse tipo de situações quando falarmos sobre exceções no próximo tutorial.

O que há de errado desta vez? Bem, o problema é que podemos concatenar uma string (" Their sum is ") e um número inteiro . Então, ao convertermos uma string para um inteiro, devemos converter um inteiro de volta para uma string. A função que precisamos é chamada str, Que toma um valor e o converte em uma string.

>>> a = input("Write the first number: ")
Write the first number: 10
>>> b = input("Write the second number: ")
Write the second number: 23
>>> sum = int(a) + int(b)
>>> print ("Their sum is " + str(sum))
Their sum is 33

Isso é mais parecido.

Você pode estar se perguntando o que acontece se você passar int para uma string que não pode ser convertida em um número.

>>> int("banana")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'banana'

Bem, por agora, digamos que o interpretador não gostou um pouco. Como afirmado anteriormente, isso será discutido mais adiante nesta série.

Etiquetas do documento e colaboradores

 Última atualização por: LucasPrado,