Explore Tipos Inteiro e Booleano
Nesta etapa, exploraremos os tipos de dados inteiros (int) e booleanos (bool) em Python. Inteiros são números inteiros, como 10, -5 ou 0. Booleanos representam um de dois valores: True ou False, e são um subtipo de inteiros.
Um conceito importante em Python é a imutabilidade. Os tipos numéricos são imutáveis, o que significa que, uma vez que um objeto numérico é criado, seu valor não pode ser alterado. Se você reatribuir uma variável a um novo número, ela apontará para um novo objeto na memória. Podemos verificar isso usando a função nativa id(), que retorna o endereço de memória exclusivo de um objeto, e a função type(), que mostra seu tipo de dado.
O ambiente de laboratório já criou um arquivo para você. No explorador de arquivos do WebIDE à esquerda, abra o arquivo ~/project/number_types.py. Adicione o seguinte código a ele:
## Demonstrate immutability of integers
a = 5
print(f"Initial value of a: {a}")
print(f"Type of a: {type(a)}")
print(f"ID of a: {id(a)}")
## Reassign 'a' to a new value
a = 6
print(f"\nNew value of a: {a}")
print(f"New ID of a: {id(a)}")
## Demonstrate boolean type
print("\n--- Boolean Types ---")
is_true = True
is_false = False
print(f"Value of is_true: {is_true}, Type: {type(is_true)}")
print(f"Value of is_false: {is_false}, Type: {type(is_false)}")
## Booleans behave like integers (1 and 0) in arithmetic
print(f"\nTrue + 5: {True + 5}")
print(f"False * 3: {False * 3}")
Após adicionar o código, salve o arquivo. Para executar o script, abra o terminal integrado no WebIDE e execute o seguinte comando:
python ~/project/number_types.py
Você deverá ver uma saída semelhante à seguinte. Observe que os endereços de memória (ID) serão diferentes no seu sistema.
Initial value of a: 5
Type of a: <class 'int'>
ID of a: <memory_address_1>
New value of a: 6
New ID of a: <memory_address_2>
--- Boolean Types ---
Value of is_true: True, Type: <class 'bool'>
Value of is_false: False, Type: <class 'bool'>
True + 5: 6
False * 3: 0
A saída mostra que, quando a foi reatribuído de 5 para 6, seu ID mudou, confirmando que um novo objeto inteiro foi criado. Também demonstra que True é tratado como 1 e False como 0 nos cálculos.