Seu pedido de recurso está relacionado a um problema? Por favor, descreva.
Dado um código de Unidade Federativa (UF) do Brasil, quero obter o nome completo do estado correspondente. Isso é útil para conversão de siglas de estados em nomes completos em sistemas e documentos.
Por exemplo, converter "SP" para "São Paulo".
Descreva a solução que você gostaria
- Uma função
convert_uf_to_text, que recebe um código de UF (string de 2 letras) e retorna o nome completo do estado correspondente.
- A função deve verificar se o código UF é válido e retornar o nome do estado correspondente.
- Se o código UF não for válido, a função deve retornar
None.
- A função deve lidar com todos os estados e o Distrito Federal do Brasil.
- Já existe uma lista das UFs no arquivo
brutils/data/enums/uf.py. Ela deve ser reutilizada.
Descreva alternativas que você considerou
-
Seguir até o passo 8 do guia de contribuição.
-
Como parte do passo 8, criar o arquivo: brutils-python/brutils/ibge/uf.py.
def convert_uf_to_text(uf): # type: (str) -> str | None
"""
Converts a given Brazilian state code (UF) to its full state name.
This function takes a 2-letter UF code and returns the corresponding full state name.
It handles all Brazilian states and the Federal District.
Args:
uf (str): The 2-letter UF code to be converted.
Returns:
str or None: The full name of the state corresponding to the UF code,
or None if the UF code is invalid.
Example:
>>> convert_uf_to_text('SP')
"São Paulo"
>>> convert_uf_to_text('RJ')
"Rio de Janeiro"
>>> convert_uf_to_text('XX')
None
"""
# implementar a lógica da função aqui
Importar a nova função no arquivo brutils-python/brutils/__init__.py:
# UF Imports
from brutils.ibge.uf import (
convert_uf_to_text,
)
E adicionar o nome da nova função na lista __all__ do mesmo arquivo brutils-python/brutils/__init__.py:
__all__ = [
...
# UF
'convert_uf_to_text',
]
-
Como parte do passo 9, criar o arquivo de teste: brutils-python/tests/ibge/test_uf.py.
from unittest import TestCase
from brutils.ibge.uf import convert_uf_to_text
class TestUF(TestCase):
def test_convert_uf_to_text(self):
# Testes para códigos válidos
self.assertEqual(convert_uf_to_text('SP'), "São Paulo")
self.assertEqual(convert_uf_to_text('RJ'), "Rio de Janeiro")
self.assertEqual(convert_uf_to_text('MG'), "Minas Gerais")
self.assertEqual(convert_uf_to_text('DF'), "Distrito Federal")
self.assertEqual(convert_uf_to_text('df'), "Distrito Federal")
# Testes para códigos inválidos
self.assertIsNone(convert_uf_to_text('XX')) # Código não existe
self.assertIsNone(convert_uf_to_text('')) # Código vazio
# Implementar mais casos de teste aqui
-
Seguir os passos seguintes do guia de contribuição.
Contexto adicional
- A lista de estados e suas siglas é definida pelo Instituto Brasileiro de Geografia e Estatística (IBGE). Para mais detalhes, consulte o site do IBGE.
- A sigla deve ser verificada contra a lista oficial de estados e do Distrito Federal.
Seu pedido de recurso está relacionado a um problema? Por favor, descreva.
Dado um código de Unidade Federativa (UF) do Brasil, quero obter o nome completo do estado correspondente. Isso é útil para conversão de siglas de estados em nomes completos em sistemas e documentos.
Por exemplo, converter
"SP"para"São Paulo".Descreva a solução que você gostaria
convert_uf_to_text, que recebe um código de UF (string de 2 letras) e retorna o nome completo do estado correspondente.None.brutils/data/enums/uf.py. Ela deve ser reutilizada.Descreva alternativas que você considerou
Seguir até o passo 8 do guia de contribuição.
Como parte do passo 8, criar o arquivo:
brutils-python/brutils/ibge/uf.py.Importar a nova função no arquivo
brutils-python/brutils/__init__.py:E adicionar o nome da nova função na lista
__all__do mesmo arquivobrutils-python/brutils/__init__.py:Como parte do passo 9, criar o arquivo de teste:
brutils-python/tests/ibge/test_uf.py.Seguir os passos seguintes do guia de contribuição.
Contexto adicional