A conversão de tipo significa alterar o tipo de dados de um valor. Por exemplo converter um número inteiro (5) em um número flutuante (5.0) ou uma string ('10') em um número inteiro (10). Em Python existem dois tipos de conversão de tipo:
- Conversão Implícita: Python altera o tipo de dados sozinho enquanto executa o código para evitar erros ou perda de dados.
- Conversão explícita: Você altera o tipo de dados propositalmente usando funções como int() float() ou str().
Conversão de tipo implícita
Em conversão implícita Python converte automaticamente um tipo de dados em outro durante a avaliação da expressão. Isso geralmente acontece quando um tipo de dados menor, como int, é combinado com um tipo de dados maior, como float, em uma operação. Exemplo:
Pythonx = 10 # Integer y = 10.6 # Float z = x + y print('x:' type(x)) print('y:' type(y)) print('z =' z) print('z :' type(z))
Saída
x:y: z = 20.6 z :
Explicação: x é um número inteiro e e é um flutuador. Em z = x + y Python converte automaticamente x flutuar para evitar perda de dados Com um flutuador 0,6.
Conversão de tipo explícita
Conversão explícita (ou conversão de tipo) é quando você converte manualmente o tipo de dados de um valor usando Python funções integradas . Isso é útil quando você deseja controlar como os dados são interpretados ou manipulados em seu código. Algumas funções comuns de conversão de tipo incluem:
- int() converte um valor em um número inteiro
- flutuador() converte um valor em um número de ponto flutuante
- str() converte um valor em uma string
- bool() converte um valor em um Booleano (Verdadeiro/Falso)
Exemplo:
Pythons = '100' # String a = int(s) print(a) print(type(a))
Saída
100
Explicação: a = int(s) nós o convertemos explicitamente em um número inteiro. Essa mudança manual de tipo é chamada de conversão explícita de tipo e a se torna 100 do tipo
Exemplos de funções de conversão de tipo comum
Exemplo 1: Convertendo uma string binária
Pythons = '10010' a = int(s 2) print(a) b= float(s) print(b)
Saída
18 10010.0
Explicação:
- interno(s 2) interpreta a string binária '10010' como o número inteiro 18.
- flutuador(es) converte a string em um número de ponto flutuante.
Exemplo 2: Conversão ASCII Hexadecimal e Octal
Pythonc = '4' print('ASCII of '4':' ord(c)) print('56 in Hex:' hex(56)) print('56 in Octal:' oct(56))
Saída
ASCII of '4': 52 56 in Hex: 0x38 56 in Octal: 0o70
Explicação:
- palavras) retorna o código ASCII do caractere '4'.
- hexadecimal() e outubro() converta o inteiro 56 em suas representações hexadecimal e octal, respectivamente.
Exemplo 3 : String para conjunto e lista de tuplas
Pythons = 'geeks' print('To tuple:' tuple(s)) print('To set:' set(s)) print('To list:' list(s))
Saída
To tuple: ('g' 'e' 'e' 'k' 's') To set: {'e' 'g' 'k' 's'} To list: ['g' 'e' 'e' 'k' 's'] Explicação:
- tupla(s) mantém todos os caracteres, incluindo duplicatas, em ordem.
- conjunto(s) remove duplicatas e retorna uma coleção não ordenada.
- lista(s) retorna uma lista de caracteres da string.
Exemplo 4: Outras conversões – Dicionário de strings complexas
Pythona = 1 tup = (('a' 1) ('f' 2) ('g' 3)) print('To complex:' complex(1 2)) print('To string:' str(a)) print('To dict:' dict(tup))
Saída
To complex: (1+2j) To string: 1 To dict: {'a': 1 'f': 2 'g': 3} Explicação:
- complexo(1 2) cria um número complexo com parte real 1 e parte imaginária 2.
- str(a) converte o inteiro 1 na string '1'.
- ditar (tup) cria um dicionário a partir de uma sequência de tuplas de valores-chave.