{k: v*2 for k, v in mapping.items() if v > 0}
Built-in Data Structures

Meaning

Creates a new dictionary containing only the entries from `mapping` whose values are positive, with each value doubled.

Primary Function

Filter and transform a mapping by selecting positive values and doubling them.

Communicative Purpose

Express a transformation that selects positive entries and scales their values.

Pattern

{k: v*2 for k, v in mapping.items() if v > 0}

Core Structure

{key: expression for key, value in iterable if condition}

Função primária

Filter and transform a mapping by selecting positive values and doubling them.

Propósito comunicativo

Express a transformation that selects positive entries and scales their values.

Situações de gatilho

When you need to filter out non‑positive values and scale the remaining values, e.g., normalizing positive counts or scaling scores.

Contextos

Data processing pipelines, score normalization, filtering positive measurements, preparing data for visualization.

Padrão

{k: v*2 for k, v in mapping.items() if v > 0}

Estrutura central

{key: expression for key, value in iterable if condition}

Slots de substituição

{mapping}: any iterable of key‑value pairs (e.g., dict.items()); {expression}: any expression using the value (e.g., v*2, v+1); {condition}: any boolean expression (e.g., v>0, v%2==0).

Colocados típicos

  • dict
  • mapping
  • items
  • filter
  • map
  • comprehension

Substituições comuns

  • Expression: v*2 → v+1
  • v*3
  • v/2
  • Condition: v>0 → v!=0
  • v<10
  • v%2==0
  • Iterable: mapping.items() → enumerate(seq)
  • zip(keys
  • vals)
  • Key expression: k → k.upper()
  • k+'_suffix'.

Erros comuns

Using v*2 on non‑numeric values raises TypeError; forgetting .items() and iterating over keys only; omitting the condition and processing zero/negative values; using .values() and losing the keys.

Similar / contraste

Similar: {k: v for k, v in mapping.items() if v>0} (filter only); {k: v*2 for k, v in mapping.items()} (transform all); {k: v for k, v in mapping.items()} (identity). Contrasting: {k: v*2 for k, v in mapping.items() if v<0} (double negatives).

Interferências

Confusing with list/set comprehensions; misplacing the condition after the expression; using .items() on non‑mapping objects leads to AttributeError.

Família do chunk

  • dict comprehension idioms

Nuance

Only values strictly greater than zero are processed; zero and negative values are omitted entirely.

Efeito pragmático

Signals the intent to keep only positive‑valued entries and scale them, often for normalization or emphasis.

Dica de memória

Double the positives.

Nota

Assumes the values support multiplication by an int; otherwise a TypeError is raised.

Upgrade path

Extend to more complex transformations (nested comprehensions, conditional expressions) or combine with other comprehensions.

Frequência: HighFormulaicidade: Semi-fixedTipo de construção: dict comprehensionPrioridade de aquisição: Automatic productionPrioridade de output: BothTag de espaçamento: Immediate

Log in to save chunks.