Como Verificar se uma Variável é uma String em Python

PythonBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar se uma variável é uma string em Python. Isso envolve a compreensão do tipo de dado fundamental string e a exploração de métodos para identificar strings.

Você começará criando e manipulando strings usando aspas simples, duplas e triplas, incluindo strings de múltiplas linhas. Em seguida, você aprenderá a usar a função type() e a função isinstance() para confirmar se uma variável contém um valor string.

Entenda as Strings em Python

Nesta etapa, você aprenderá sobre strings em Python. Strings são usadas para representar texto e são um dos tipos de dados mais fundamentais na programação. Você explorará como criar strings, como trabalhar com elas e algumas das operações comuns que você pode realizar em strings.

Primeiro, vamos criar um arquivo Python chamado string_examples.py no seu diretório ~/project usando o editor VS Code.

Strings podem ser criadas usando aspas simples ('...') ou aspas duplas ("..."). Vamos adicionar alguns exemplos a string_examples.py:

## Criando strings
string1 = 'Olá, LabEx!'
string2 = "Python é divertido"

print(string1)
print(string2)

Salve o arquivo. Agora, vamos executar este script usando o comando python no terminal:

python ~/project/string_examples.py

Você deve ver a seguinte saída:

Olá, LabEx!
Python é divertido

Strings também podem conter números, símbolos e espaços:

string3 = "12345"
string4 = "!@#$%^"
string5 = "Esta é uma frase."

print(string3)
print(string4)
print(string5)

Adicione estas linhas ao seu arquivo string_examples.py e execute-o novamente:

python ~/project/string_examples.py

Você deve ver a seguinte saída:

Olá, LabEx!
Python é divertido
12345
!@#$%^
Esta é uma frase.

Python também suporta strings de múltiplas linhas usando aspas triplas ('''...''' ou """..."""):

string6 = '''Esta é uma
string de múltiplas linhas.'''

string7 = """Esta é outra
string de múltiplas linhas."""

print(string6)
print(string7)

Adicione estas linhas ao seu arquivo string_examples.py e execute-o novamente:

python ~/project/string_examples.py

Você deve ver a seguinte saída:

Olá, LabEx!
Python é divertido
12345
!@#$%^
Esta é uma frase.
Esta é uma
string de múltiplas linhas.
Esta é outra
string de múltiplas linhas.

Entender como criar e usar strings é essencial para trabalhar com dados de texto em Python. Nas próximas etapas, você aprenderá mais sobre operações de string e como manipular strings de forma eficaz.

Use type() para Verificar

Nesta etapa, você aprenderá como usar a função type() em Python para verificar o tipo de dado de uma variável. Esta é uma ferramenta útil para entender o tipo de dado com o qual você está trabalhando e para depurar seu código.

Vamos continuar usando o arquivo string_examples.py que você criou na etapa anterior. Adicionaremos algum código para verificar os tipos das variáveis que definimos.

A função type() retorna o tipo de um objeto. Por exemplo, se você tiver uma variável string, type() retornará <class 'str'>.

Adicione as seguintes linhas ao seu arquivo string_examples.py:

## Verificando o tipo de variáveis
print(type(string1))
print(type(string2))
print(type(string3))

Salve o arquivo. Agora, vamos executar o script usando o comando python no terminal:

python ~/project/string_examples.py

Você deve ver a seguinte saída:

Olá, LabEx!
Python é divertido
12345
!@#$%^
Esta é uma frase.
Esta é uma
string de múltiplas linhas.
Esta é outra
string de múltiplas linhas.
<class 'str'>
<class 'str'>
<class 'str'>

Como você pode ver, a função type() confirma que string1, string2 e string3 são todos do tipo str, que significa string.

Agora, vamos adicionar alguns outros tipos de variáveis para ver como type() funciona com elas. Adicione as seguintes linhas ao seu arquivo string_examples.py:

## Verificando o tipo de outras variáveis
number = 10
decimal = 3.14
boolean = True

print(type(number))
print(type(decimal))
print(type(boolean))

Salve o arquivo e execute-o novamente:

python ~/project/string_examples.py

Você deve ver a seguinte saída:

Olá, LabEx!
Python é divertido
12345
!@#$%^
Esta é uma frase.
Esta é uma
string de múltiplas linhas.
Esta é outra
string de múltiplas linhas.
<class 'str'>
<class 'str'>
<class 'str'>
<class 'int'>
<class 'float'>
<class 'bool'>

Aqui, type() mostra que number é um int (inteiro), decimal é um float (número de ponto flutuante) e boolean é um bool (booleano).

Usar type() é uma maneira simples de verificar o tipo de dado de uma variável em Python. Isso pode ser útil quando você está trabalhando com diferentes tipos de dados e precisa garantir que está realizando as operações corretas.

Confirme com isinstance()

Nesta etapa, você aprenderá como usar a função isinstance() em Python para verificar se um objeto é uma instância de uma classe ou tipo específico. Esta é outra maneira de verificar o tipo de dado de uma variável, e pode ser especialmente útil ao trabalhar com herança e classes personalizadas.

Vamos continuar usando o arquivo string_examples.py com o qual você tem trabalhado. Adicionaremos algum código para demonstrar como isinstance() funciona.

A função isinstance() recebe dois argumentos: o objeto que você deseja verificar e a classe ou tipo que você deseja verificar. Ela retorna True se o objeto é uma instância da classe ou tipo especificado, e False caso contrário.

Adicione as seguintes linhas ao seu arquivo string_examples.py:

## Verificando com isinstance()
print(isinstance(string1, str))
print(isinstance(number, int))
print(isinstance(decimal, float))
print(isinstance(boolean, bool))
print(isinstance(string1, int))

Salve o arquivo. Agora, vamos executar o script usando o comando python no terminal:

python ~/project/string_examples.py

Você deve ver a seguinte saída:

Olá, LabEx!
Python é divertido
12345
!@#$%^
Esta é uma frase.
Esta é uma
string de múltiplas linhas.
Esta é outra
string de múltiplas linhas.
<class 'str'>
<class 'str'>
<class 'str'>
<class 'int'>
<class 'float'>
<class 'bool'>
True
True
True
True
False

Como você pode ver, isinstance(string1, str) retorna True porque string1 é uma string. Da mesma forma, isinstance(number, int) retorna True porque number é um inteiro, e assim por diante. No entanto, isinstance(string1, int) retorna False porque string1 não é um inteiro.

isinstance() também pode ser usado com classes personalizadas. Por exemplo:

class MyClass:
    pass

obj = MyClass()

print(isinstance(obj, MyClass))

Adicione estas linhas ao seu arquivo string_examples.py e execute-o novamente:

python ~/project/string_examples.py

Você deve ver a seguinte saída:

Olá, LabEx!
Python é divertido
12345
!@#$%^
Esta é uma frase.
Esta é uma
string de múltiplas linhas.
Esta é outra
string de múltiplas linhas.
<class 'str'>
<class 'str'>
<class 'str'>
<class 'int'>
<class 'float'>
<class 'bool'>
True
True
True
True
False
True

Aqui, isinstance(obj, MyClass) retorna True porque obj é uma instância de MyClass.

Usar isinstance() é uma maneira poderosa de verificar o tipo de um objeto em Python, especialmente ao trabalhar com herança e classes personalizadas. Ele permite que você escreva um código mais robusto e flexível que pode lidar com diferentes tipos de dados corretamente.

Resumo

Neste laboratório, a etapa inicial se concentra na compreensão de strings em Python, um tipo de dado fundamental para representar texto. Ele aborda a criação de strings usando aspas simples, aspas duplas e aspas triplas para strings de múltiplas linhas. Exemplos são fornecidos para demonstrar como as strings podem conter números, símbolos e espaços.

O laboratório orienta os usuários a criar um arquivo string_examples.py, adicionar vários exemplos de strings e executar o script usando o comando python para observar a saída. Essa abordagem prática reforça a compreensão da criação e manipulação de strings em Python.