Expressões e strings 1
Expressões e stringsCaracteres strings podem reter mensagens para usuarios lerem, porém em python eles podem também reter sequencias binarias de dado. Vou cobrir aqui como você pode usar strings em seu programa e como você pode converter entre strings, numeros e outros tipos de dados.
Apos ler estes conceitos você terá um solido entendimento de expressões e como seu programa pode usa-los para tomar decisões e comparar dados.
Expressões
Expressões são a base para efetuar tomada de decisões em python e em outras linguagens
de programações. O python avalia cada expressão para ver se isto é True or False.
A mais simples forma para uma expressão é qualquer valor: se o valor não-zero então isto é considerado como Truese isto é igual a zero então isto é considerado False.
>>> 1 > 2
False
>>> 1 > 1
False
>>> 1 == 1
True
>>> 30 < 1 False >>> 2.1 < 2 False >>> 2 <= 2 True >>>
Comparando tipos numericos
Python proporciona um conjunto standard de operadores para comparando tipos numericos de dado.
Abaixo segue uma tabela com exemplos.
Operator Description Sample Input Sample Output
Less than 10 < 5 0 < Greater than 10 > 5 1
>
Less than or equal 3 <= 5 1 <= 3 <= 3 1 Greater than or equal 3 >= 5 0
>=
Equality 3 == 3 1
==
3 == 5 0
Inequality* 3 != 5 1
!=
É interessante mencionar que antes de fazer a comparação o python aplica as regras de conversão que são aplicas com a função coerce.
A comparação entre dois tipos de numeros complexoes envolve somente a parte real de cada numero, se eles são diferentes. Se a real parte de ambos é igual então a comparação é feita
considerando a parte imaginaria.
Você não precisa apenas usar os operadores de uma maneira binaria você pode também
fazer coisas como.
>>> a, b, c = 1, 2, 3
>>> a < b < c True >>> a <= b <= c <= 10 True >>> a > b > c
False
>>> a > b == c
False
>>> a == b == c
False
>>>
Note que a < b < c é o mesmo que comparando a < b e então comparando b < c exceto se b é avaliado uma vez mais(além disso isto realmente poderia fazer a diferença se b fosse avaliado mais vezes em tempo real). Expressões como a < b > c são legais porém não encorajada.
Python tem tres funções adicionais que você pode usar quando comparando dados.
min(x[, y, z, ..])
A função min recebe dois argumentos ou mais de qualquer tipo e retorna o menor deles.
>>> min(1, 2, 991, 12)
1
>>> min((1, 213))
1
>>> min((32, 213))
32
>>> min([1, 2, 311], 3232)
3232
>>> min([2231, 232, 311], [3232, 4928])
[2231, 232, 311]
>>> min([22, 232, 311], [3232, 4928])
[22, 232, 311]
>>> min([2232323, 232, 311], [3232, 4928])
[3232, 4928]
>>>
É interessante que você pegue esta função e brinque com ela, tentando entender
como ela funciona.
max(x[, y, z,..])
Similarmente a função max escolhe o mais alto dos valores passados.
>>> max([1, 2, 3], [4, 2, 2])
[4, 2, 2]
>>> max([1, 2, 3], [4, 2, 2], 323)
[4, 2, 2]
>>> max([1, 2, 3], [4, 2, 2], 323, 29380293820983)
[4, 2, 2]
>>>
Veja que embora tenhamos passado um valor altimossimo que supera qualquer valor
que possa esta dentro das listas passadas o python ainda assim retornou [4, 2, 2] isto
acontece porque listas são consideras higher que numeros.
A avalição é feita entre as duas listas [1, 2, 3], [4, 2, 2].
cmp(x, y)
Esta função recebe dois argumentos e retorna um numero negativo, 0, ou um numero positivo se o primeiro argumento é menor que, igual a, ou maior que o segundo.
>>> cmp(2, 3)
-1
>>> cmp(3, 2)
1
>>> cmp(3, 3)
0
>>>
0 comentários:
Postar um comentário
Faça o seu comentário e nos siga no Twitter