# Patentes Vehiculares Chile
Una librería Python para validar y trabajar con patentes vehiculares chilenas.
## Instalación
```bash
pip install patentes-vehiculares-chile
```
## Uso
### Validación de Patentes
```python
from patentes_vehiculares_chile import validar_patente, detectar_tipo_patente, limpiar_patente
# Validar una patente
es_valida = validar_patente("ABCD12")
print(es_valida) # True
# Detectar tipo de patente
tipo = detectar_tipo_patente("AB1234")
print(tipo) # TipoPatente.ANTIGUA
# Limpiar una patente
patente_limpia = limpiar_patente(" ab-12.34 ")
print(patente_limpia) # "AB1234"
```
### Validación de RUT
```python
from patentes_vehiculares_chile import validar_rut, calcular_dv
# Validar un RUT
es_valido = validar_rut("12345678-5")
print(es_valido) # True o False
# Calcular dígito verificador
dv = calcular_dv("12345678")
print(dv) # "5"
```
### Generación de Patentes y RUT
```python
from patentes_vehiculares_chile import (
generar_patente_vehiculo_antiguo,
generar_patente_vehiculo_nuevo,
generar_patente_motocicleta_antigua,
generar_patente_motocicleta_nueva,
generar_rut
)
# Generar patentes
patente_antigua = generar_patente_vehiculo_antiguo()
print(patente_antigua) # "AB1234"
patente_nueva = generar_patente_vehiculo_nuevo()
print(patente_nueva) # "BCDF12"
moto_antigua = generar_patente_motocicleta_antigua()
print(moto_antigua) # "BC123"
moto_nueva = generar_patente_motocicleta_nueva()
print(moto_nueva) # "BCD12"
# Generar RUT
rut = generar_rut()
print(rut) # "12345678-5"
```
## Características
- **Validación de patentes vehiculares chilenas**
- Soporte para formatos antiguos (AB1234) y nuevos (ABCD12)
- Validación de motocicletas (formatos antiguos y nuevos)
- Detección automática del tipo de patente
- **Validación de RUT chileno**
- Validación completa con dígito verificador
- Cálculo de dígito verificador
- **Generación de datos**
- Generación de patentes válidas (vehículos y motocicletas)
- Generación de RUT válidos
- **Utilidades**
- Limpieza y normalización de patentes
- Tipos de datos bien definidos
## Formatos Soportados
### Patentes de Vehículos
- **Antiguo (1845-2007)**: 2 letras + 4 números (ej: AB1234)
- **Nuevo (2008-2023)**: 4 consonantes + 2 números (ej: BCDF12)
### Patentes de Motocicletas
- **Antiguo**: 2 letras + 3 números (ej: BC123)
- **Nuevo**: 3 letras + 2 números (ej: BCD12)
### RUT Chileno
- **Formato**: 1-8 dígitos + guión + dígito verificador (ej: 12345678-5)
## API Reference
### Funciones de Validación
- `validar_patente(patente: str) -> bool`
- `es_formato_valido(patente: str) -> bool`
- `detectar_tipo_patente(patente: str) -> Optional[TipoPatente]`
- `validar_rut(rut: str) -> bool`
- `calcular_dv(rut_num: str) -> str`
### Funciones de Generación
- `generar_patente_vehiculo_antiguo() -> str`
- `generar_patente_vehiculo_nuevo() -> str`
- `generar_patente_motocicleta_antigua() -> str`
- `generar_patente_motocicleta_nueva() -> str`
- `generar_rut() -> str`
### Utilidades
- `limpiar_patente(patente: str) -> str`
### Tipos de Datos
- `TipoPatente`: Enum con valores `ANTIGUA` y `NUEVA`
- `FormatoPatente`: Estructura que define formatos de patentes
- `FormatoRut`: Estructura que define formato de RUT
## Contribuir
Las contribuciones son bienvenidas. Por favor, abre un issue primero para discutir los cambios que te gustaría hacer.
## Licencia
Este proyecto está bajo la Licencia MIT - ver el archivo [LICENSE](LICENSE) para más detalles.
Raw data
{
"_id": null,
"home_page": null,
"name": "patentes-vehiculares-chile",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "patentes, vehiculos, chile, validacion, transporte",
"author": null,
"author_email": "Jorge Gallardo <jorgito899@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/c0/75/660e03dd92e85ba2f2d79a4d65ff7d05c248d8917e1b803289aba806f14a/patentes_vehiculares_chile-0.2.0.tar.gz",
"platform": null,
"description": "# Patentes Vehiculares Chile\r\n\r\nUna librer\u00eda Python para validar y trabajar con patentes vehiculares chilenas.\r\n\r\n## Instalaci\u00f3n\r\n\r\n```bash\r\npip install patentes-vehiculares-chile\r\n```\r\n\r\n## Uso\r\n\r\n### Validaci\u00f3n de Patentes\r\n\r\n```python\r\nfrom patentes_vehiculares_chile import validar_patente, detectar_tipo_patente, limpiar_patente\r\n\r\n# Validar una patente\r\nes_valida = validar_patente(\"ABCD12\")\r\nprint(es_valida) # True\r\n\r\n# Detectar tipo de patente\r\ntipo = detectar_tipo_patente(\"AB1234\")\r\nprint(tipo) # TipoPatente.ANTIGUA\r\n\r\n# Limpiar una patente\r\npatente_limpia = limpiar_patente(\" ab-12.34 \")\r\nprint(patente_limpia) # \"AB1234\"\r\n```\r\n\r\n### Validaci\u00f3n de RUT\r\n\r\n```python\r\nfrom patentes_vehiculares_chile import validar_rut, calcular_dv\r\n\r\n# Validar un RUT\r\nes_valido = validar_rut(\"12345678-5\")\r\nprint(es_valido) # True o False\r\n\r\n# Calcular d\u00edgito verificador\r\ndv = calcular_dv(\"12345678\")\r\nprint(dv) # \"5\"\r\n```\r\n\r\n### Generaci\u00f3n de Patentes y RUT\r\n\r\n```python\r\nfrom patentes_vehiculares_chile import (\r\n generar_patente_vehiculo_antiguo,\r\n generar_patente_vehiculo_nuevo,\r\n generar_patente_motocicleta_antigua,\r\n generar_patente_motocicleta_nueva,\r\n generar_rut\r\n)\r\n\r\n# Generar patentes\r\npatente_antigua = generar_patente_vehiculo_antiguo()\r\nprint(patente_antigua) # \"AB1234\"\r\n\r\npatente_nueva = generar_patente_vehiculo_nuevo()\r\nprint(patente_nueva) # \"BCDF12\"\r\n\r\nmoto_antigua = generar_patente_motocicleta_antigua()\r\nprint(moto_antigua) # \"BC123\"\r\n\r\nmoto_nueva = generar_patente_motocicleta_nueva()\r\nprint(moto_nueva) # \"BCD12\"\r\n\r\n# Generar RUT\r\nrut = generar_rut()\r\nprint(rut) # \"12345678-5\"\r\n```\r\n\r\n## Caracter\u00edsticas\r\n\r\n- **Validaci\u00f3n de patentes vehiculares chilenas**\r\n - Soporte para formatos antiguos (AB1234) y nuevos (ABCD12)\r\n - Validaci\u00f3n de motocicletas (formatos antiguos y nuevos)\r\n - Detecci\u00f3n autom\u00e1tica del tipo de patente\r\n\r\n- **Validaci\u00f3n de RUT chileno**\r\n - Validaci\u00f3n completa con d\u00edgito verificador\r\n - C\u00e1lculo de d\u00edgito verificador\r\n\r\n- **Generaci\u00f3n de datos**\r\n - Generaci\u00f3n de patentes v\u00e1lidas (veh\u00edculos y motocicletas)\r\n - Generaci\u00f3n de RUT v\u00e1lidos\r\n\r\n- **Utilidades**\r\n - Limpieza y normalizaci\u00f3n de patentes\r\n - Tipos de datos bien definidos\r\n\r\n## Formatos Soportados\r\n\r\n### Patentes de Veh\u00edculos\r\n- **Antiguo (1845-2007)**: 2 letras + 4 n\u00fameros (ej: AB1234)\r\n- **Nuevo (2008-2023)**: 4 consonantes + 2 n\u00fameros (ej: BCDF12)\r\n\r\n### Patentes de Motocicletas\r\n- **Antiguo**: 2 letras + 3 n\u00fameros (ej: BC123)\r\n- **Nuevo**: 3 letras + 2 n\u00fameros (ej: BCD12)\r\n\r\n### RUT Chileno\r\n- **Formato**: 1-8 d\u00edgitos + gui\u00f3n + d\u00edgito verificador (ej: 12345678-5)\r\n\r\n## API Reference\r\n\r\n### Funciones de Validaci\u00f3n\r\n- `validar_patente(patente: str) -> bool`\r\n- `es_formato_valido(patente: str) -> bool`\r\n- `detectar_tipo_patente(patente: str) -> Optional[TipoPatente]`\r\n- `validar_rut(rut: str) -> bool`\r\n- `calcular_dv(rut_num: str) -> str`\r\n\r\n### Funciones de Generaci\u00f3n\r\n- `generar_patente_vehiculo_antiguo() -> str`\r\n- `generar_patente_vehiculo_nuevo() -> str`\r\n- `generar_patente_motocicleta_antigua() -> str`\r\n- `generar_patente_motocicleta_nueva() -> str`\r\n- `generar_rut() -> str`\r\n\r\n### Utilidades\r\n- `limpiar_patente(patente: str) -> str`\r\n\r\n### Tipos de Datos\r\n- `TipoPatente`: Enum con valores `ANTIGUA` y `NUEVA`\r\n- `FormatoPatente`: Estructura que define formatos de patentes\r\n- `FormatoRut`: Estructura que define formato de RUT\r\n\r\n## Contribuir\r\n\r\nLas contribuciones son bienvenidas. Por favor, abre un issue primero para discutir los cambios que te gustar\u00eda hacer.\r\n\r\n## Licencia\r\n\r\nEste proyecto est\u00e1 bajo la Licencia MIT - ver el archivo [LICENSE](LICENSE) para m\u00e1s detalles.\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Una librer\u00eda Python para validar y trabajar con patentes vehiculares chilenas",
"version": "0.2.0",
"project_urls": {
"Homepage": "https://github.com/xatomen/patentes-vehiculares-chile",
"Issues": "https://github.com/xatomen/patentes-vehiculares-chile/issues",
"Repository": "https://github.com/xatomen/patentes-vehiculares-chile"
},
"split_keywords": [
"patentes",
" vehiculos",
" chile",
" validacion",
" transporte"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "874236e5cfc078113b6d74da992ebcae9f55f3cdf87e53bdef92fcc778e32af9",
"md5": "271ad4a696861f284f0cdc0f55c7e0ec",
"sha256": "5b1e37ce0888fc4dddf4ca0e8782bbfe0984b3fe6a16f434c19df2ca250d2f0b"
},
"downloads": -1,
"filename": "patentes_vehiculares_chile-0.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "271ad4a696861f284f0cdc0f55c7e0ec",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 7387,
"upload_time": "2025-08-01T02:51:13",
"upload_time_iso_8601": "2025-08-01T02:51:13.372720Z",
"url": "https://files.pythonhosted.org/packages/87/42/36e5cfc078113b6d74da992ebcae9f55f3cdf87e53bdef92fcc778e32af9/patentes_vehiculares_chile-0.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c075660e03dd92e85ba2f2d79a4d65ff7d05c248d8917e1b803289aba806f14a",
"md5": "2cae6e17c1ea314b09e69b3f8521f455",
"sha256": "985b43bad552f3ac34c1446e49c75ac44a397b7f61830390df135bcfcd3c1612"
},
"downloads": -1,
"filename": "patentes_vehiculares_chile-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "2cae6e17c1ea314b09e69b3f8521f455",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 9286,
"upload_time": "2025-08-01T02:51:14",
"upload_time_iso_8601": "2025-08-01T02:51:14.395306Z",
"url": "https://files.pythonhosted.org/packages/c0/75/660e03dd92e85ba2f2d79a4d65ff7d05c248d8917e1b803289aba806f14a/patentes_vehiculares_chile-0.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-01 02:51:14",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "xatomen",
"github_project": "patentes-vehiculares-chile",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "patentes-vehiculares-chile"
}