introdução
números são extremamente comuns na programação. Eles são usados para representar coisas como dimensões de tela, localizações geográficas, dinheiro e pontos, a quantidade de tempo que passa em um vídeo, posições de avatares de jogos, e cores através da atribuição de códigos numéricos.
ser capaz de executar efetivamente operações matemáticas na programação é uma habilidade importante para se desenvolver por causa da frequência com que você estará trabalhando com números., Embora uma compreensão de alto nível da matemática possa certamente ajudá-lo a se tornar um programador melhor, não é um pré-requisito. Se você não tem um fundo em matemática, tente pensar em matemática como uma ferramenta para realizar o que você gostaria de alcançar, e como uma maneira de melhorar o seu pensamento lógico.
estaremos trabalhando com dois dos tipos de dados numéricos mais usados em Python, inteiros e flutuadores:
Este tutorial irá percorrer os operadores que podem ser usados com os tipos de dados numéricos em Python.
operadores
um operador é um símbolo ou função que indica uma operação., Por exemplo, em matemática o sinal + ou + é o operador que indica adição.
em Python, veremos alguns operadores familiares que são trazidos da matemática, mas outros operadores que usaremos são específicos para a programação de computadores.
Aqui está uma tabela de referência rápida de operadores relacionados com matemática em Python. Vamos cobrir todas as seguintes operações neste tutorial., of x and y
x
and y
x / y
x
to the y
powerWe’ll also be covering compound assignment operators, including +=
and *=
, that combine an arithmetic operator with the =
operator.,
adição e subtração
em Python, os operadores de adição e subtração executam exatamente como fazem em matemática. Na verdade, você pode usar a linguagem de programação Python como uma calculadora.,”>
em Vez de números inteiros de passagem diretamente no print
instrução, podemos inicializar variáveis para representar valores inteiros:
a = 88b = 103print(a + b)
Output191
como os números inteiros podem ser tanto números positivos e negativos (e 0 também), podemos adicionar um número negativo com um número positivo:
c = -36d = 25print(c + d)
Output-11
Além disso, se comportam da mesma forma com carros alegóricos:
e = 5.5f = 2.5print(e + f)
Output8.0
Porque nós adicionamos dois carros alegóricos juntos, Python retornado um valor de ponto flutuante com uma casa decimal.,
A sintaxe para a subtracção é a mesma que para além de, exceto que você vai mudar o seu operador de sinal (+
) para o sinal de menos (-
):
g = 75.67h = 32print(g - h)
Output43.67
Aqui, nós subtraído um número inteiro a partir de um float. Python irá retornar um float se pelo menos um dos números envolvidos em uma equação for um float.,
Unário Operações Aritméticas
Um unário expressão matemática consiste de um único componente ou elemento, e em Python, os sinais de adição e subtração pode ser usado como um único elemento emparelhado com um valor para retornar o valor de identidade (+
), ou alterar o sinal de valor (-
).
embora não seja comumente usado, o sinal mais indica a identidade do valor., Podemos usar o sinal de mais com valores positivos:
i = 3.3print(+i)
Output3.3
Quando usamos o sinal de adição com um valor negativo, ele também vai voltar a identidade de que valor, e, neste caso, seria um valor negativo:
j = -19print(+j)
Output-19
Com um valor negativo, o sinal retorna o mesmo valor negativo.
O sinal menos, alternativamente, altera o sinal de um valor., Então, quando passamos por um valor positivo vamos descobrir que o sinal de menos antes de o valor irá retornar um valor negativo:
i = 3.3print(-i)
Output-3.3
como Alternativa, quando usamos o sinal de subtração operador unário com um valor negativo, um valor positivo será retornado:
j = -19print(-j)
Output19
O unário operações aritméticas indicadas pelo sinal de adição e subtração retornará o valor de identidade, no caso de +i
, ou o sinal oposto ao do valor de -i
.,
Multiplication and Division
Like addition and subtraction, multiplication and division will look very similar to how they do in mathematics. The sign we’ll use in Python for multiplication is *
and the sign we’ll use for division is /
.,
Aqui está um exemplo de como fazer a multiplicação em Python com dois valores de vírgula flutuante:
k = 100.1l = 10.1print(k * l)
Output1011.0099999999999
Quando você divide em Python 3, o quociente será sempre retornado como um float, mesmo se você usar dois números inteiros:
m = 80n = 5print(m / n)
Output16.0
Este é um dos principais mudanças entre o Python 2 e Python 3., Python 3 abordagem fornece uma fração de resposta, de modo que, quando você usar /
dividir 11
por 2
o quociente de 5.5
será devolvido. Em Python 2 o quociente devolvido para a expressão 11 / 2
é5
.
Python 2 /
operador executa chão divisão, onde o quociente x
o número retornado é o maior inteiro menor do que ou igual a x
., Se executar o exemplo acima de print(80 / 5)
com Python 2 em vez de Python 3, irá receber 16
como resultado sem a casa decimal.
no Python 3, você pode usar //
para executar a divisão do piso. A expressão 100 // 40
devolverá o valor de 2
. A divisão do piso é útil quando se precisa de um quociente para estar em números inteiros.
modo
o%
operador é o módulo, que devolve o restante em vez do quociente após a divisão., Isto é útil para encontrar números que são múltiplos do mesmo número, por exemplo.
Vamos olhar para o módulo em ação:
o = 85p = 15print(o % p)
Output10
Para quebrar esse baixo, 85 dividido por 15 devolve o quociente de 5 com um resto de 10. O valor 10
é o que é devolvido aqui porque o operador modulo devolve o resto de uma expressão de divisão.
If we use two floats with the modulo, a float value will be returned for the remainder:
q = 36.0r = 6.0print(o % p)
Output0.0
No caso de 36.,0 dividido por 6.0, não há nenhum restante, de modo que o valor de 0.0
é devolvido.
potência
o**
operador em Python é usado para aumentar o número à esquerda para a potência do expoente da direita. Isto é, na expressão 5 ** 3
, 5 está sendo elevado à 3ª potência. Em matemática, muitas vezes vemos esta expressão renderizada como 53, e o que está realmente acontecendo é 5 está sendo multiplicado por si mesmo 3 vezes., Em Python, obteríamos o mesmo resultado de 125
executando tanto 5 ** 3
ou 5 * 5 * 5
.
vejamos um exemplo com variáveis:
s = 52.25t = 7print(s ** t)
1063173305051.292
Levantar o flutuador 52.25
o poder de 7
meio **
operador resulta em um grande float valor retornado.,
Precedência do operador
em Python, como na matemática, precisamos ter em mente que os operadores serão avaliados por ordem de precedência, não da esquerda para a direita ou da direita para a esquerda.,
Se a gente olhar para a expressão a seguir:
u = 10 + 10 * 5
Podemos ler da esquerda para a direita, mas lembre-se de que a multiplicação será feita, em primeiro lugar, então, se podemos chamar de print(u)
, vamos receber a seguinte valor:
Output60
Isto é porque 10 * 5
avalia 50
e, em seguida, vamos adicionar 10
voltar 60
como o resultado final.,
You may be familiar with another acronym for the order of operations, such as BEDMAS or BODMAS., Seja qual for a sigla que funcione melhor para você, tente ter isso em mente ao realizar operações de matemática em Python para que os resultados que você espera sejam retornados.
operadores de atribuição
o operador de atribuição mais comum é aquele que você já usou: o sinal igual =
. The =
assignment operator assigns the value on the right to a variable on the left. Por exemplo, v = 23
atribui o valor do número inteiro 23
para a variável v
.,
Ao programar, é comum usar operadores de atribuição composta que executam uma operação no valor de uma variável e, em seguida, atribuir o novo valor resultante a essa variável. Estes compostos operadores de combinar um operador aritmético com o =
operador, assim, para além de vamos combinar +
com =
para obter o composto operador +=
., Vamos ver o que o que parece:
w = 5w += 1print(w)
Output6
Primeiro, vamos definir a variável w
igual ao valor de 5
em seguida, usamos o +=
composto operador de atribuição para adicionar o número certo para o valor de esquerda variável e, em seguida, atribuir o resultado a w
.,
Composto de operadores de atribuição são usados com freqüência no caso de loops, o que você vai usar quando você deseja repetir o processo várias vezes:
for x in range (0, 7): x *= 2 print(x)
Output024681012
Com o loop for, fomos capazes de automatizar o processo de *=
operador que multiplica a variável w
pelo número 2
e, em seguida, recebe o resultado na variável w
para a próxima iteração do loop for.,
Python tem um operador de atribuição composto para cada um dos operadores aritméticos discutidos neste tutorial:
os operadores de atribuição composta podem ser úteis quando as coisas precisam ser incrementalmente aumentadas ou diminuídas, ou quando você precisa automatizar certos processos em seu programa.
conclusão
Este tutorial cobriu muitos dos operadores que irá usar com os tipos de dados numéricos inteiros e flutuantes. Se quiser continuar a ler sobre números em Python, poderá continuar com as funções Python 3 incorporadas para trabalhar com números.,
para saber mais sobre outros tipos de dados, dê uma olhada na compreensão dos tipos de dados em Python 3, e aprenda sobre como converter tipos de dados lendo Como converter tipos de dados em Python 3.