Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

246
Views
¿Por qué no se permiten las expresiones de asignación aumentada?

Recientemente estaba leyendo PEP 572 sobre expresiones de asignación y me topé con un caso de uso interesante:

 # Compute partial sums in a list comprehension total = 0 partial_sums = [total := total + v for v in values] print("Total:", total)

Empecé a explorar el fragmento por mi cuenta y pronto descubrí que :+= no era una sintaxis de Python válida.

 # Compute partial sums in a list comprehension total = 0 partial_sums = [total :+= v for v in values] print("Total:", total)

Sospecho que puede haber alguna razón subyacente en cómo se implementa := que sabiamente excluye :+= , pero no estoy seguro de cuál podría ser. Si alguien más sabio en las formas de Python sabe por qué :+= es inviable o poco práctico o no está implementado, por favor comparta su comprensión.

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

  1. Tengo entendido que una parte importante de la eficiencia de comprensión es que los cálculos para cada elemento en el iterable original se pueden realizar en paralelo. Si está calculando un total acumulado, debe realizarse en serie.

  2. Ya tenemos sum(values) , entonces, ¿qué agrega esto en este caso de uso?

  3. Si desea algo para casos de uso más generales, functools tiene reduce .

over 4 years ago · Santiago Trujillo Report

0

El módulo itertools proporciona muchos de los mecanismos para lograr el mismo resultado sin inflar el lenguaje:

 partial_sums = list(accumulate(values)) total = partial_sums[-1]
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!