Em Python versão 3.10 ou superior, para verificar se certa string str é um identificador válido, usa-se o método
- A)str.isidentifier ( ).
Correta, porque isidentifier() verifica se a string pode ser usada como identificador válido em Python.
- B)str.casefold ( ).
Errada, porque casefold() serve para normalização de texto em comparações, não para validar identificadores.
- C)str.isprintable ( ).
Errada, porque isprintable() apenas testa se os caracteres são imprimíveis.
- D)str.isascii ( ).
Errada, porque isascii() verifica somente se a string contém caracteres ASCII.
- E)str.isdecimal ( ).
Errada, porque isdecimal() confere se os caracteres são decimais, não se a string é um identificador.
Gabarito: A
Em Python, identificar se uma string pode ser usada como nome válido de variável, função ou outro identificador é tarefa do método isidentifier(). Ele verifica se o texto segue as regras da linguagem para identificadores, como começar por letra ou sublinhado e não conter caracteres proibidos. É o tipo de detalhe que a banca adora cobrar, porque parece simples, mas troca-se um método por outro e pronto: pegadinha feita. No Python 3.10 ou superior, a forma correta de fazer essa checagem continua sendo str.isidentifier(). Se a string atender às regras de identificação da linguagem, o método retorna True; caso contrário, retorna False. Ou seja, ele não verifica se a palavra existe em um dicionário, nem se está em maiúsculas ou minúsculas, nem se é imprimível. Ele olha especificamente para a validade como identificador. As outras opções têm funções diferentes: casefold() é usado para normalização de texto em comparações; isprintable() verifica se todos os caracteres podem ser impressos; isascii() testa se a string é composta apenas por caracteres ASCII; e isdecimal() confere se todos os caracteres são dígitos decimais. Então, o gabarito A está correto porque é exatamente o método de Python para validar identificadores.