python / python/cpython

Improve performance of startswith, endswith, count, *find, and *index methods for str, bytes and bytearray

Abierto
#117,431 3 comentarios 6 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

3.13 performance type-feature
Lenguaje dominante
Python
Estrellas
77.2k
Forks
35.9k
Métricas de merge de PR
Métricas de PR pendientes

Descripción

Feature or enhancement

Proposal:

We can improve performance of str.startswith and other methods for the single-argument case by creating a fast path in the single argument parsing.

Has this already been discussed elsewhere?

This is a minor feature, which does not need previous discussion elsewhere

Links to previous discussion of this feature:

https://github.com/faster-cpython/ideas/issues/671

Linked PRs
  • gh-117432
  • gh-117466
  • gh-117468
  • gh-117480
  • gh-117495
  • gh-117499
  • gh-117502
  • gh-117590
  • gh-117591
  • gh-117782

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Empieza por la propuesta y los PR enlazados (gh-117432, gh-117466, gh-117468, gh-117480, gh-117495, gh-117499, gh-117502, gh-117590, gh-117591 y gh-117782) para comprender la implementación actual y evitar duplicar trabajo. Se considerará terminado cuando las rutas con un solo argumento de los métodos de str, bytes y bytearray indicados muestren la mejora de rendimiento prevista.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
python
Área
performance
Tipo de issue
Nueva funcionalidad
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.