Naming collision between Processing `map()` and Python `map()`
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 38/100
Direção de pesquisa
Comece com o exemplo de array e a colisão de map() descritos na issue e, em seguida, compare o dispatch referenciado de processing.py em PAppletJythonDriver.java com a API remap() do py5. Determine qual comportamento de nomenclatura ou dispatch o libprocessing deve adotar e considere as implicações de compatibilidade com os recursos integrados do Python. A tarefa estará concluída quando a API escolhida resolver o exemplo sem ambiguidade e estiver documentada ou testada de acordo.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Trying to port the array example (See issue: Port Basics / Arrays / Array #3) and I'm running into this error:
coswave = [abs(cos(map(i, 0, width, 0, pi))) for i in range(width)]
~~~^^^^^^^^^^^^^^^^^^^^
TypeError: 'int' object is not iterable
I suppose this is because Python has its own map() function (a list transformation) different from the map() function in Processing (a linear interpolation function).
Processing.py handles this by wrapping map() and dispatching based on the arguments (see source code). It uses the Processing version when called with five numeric arguments, and otherwise falls back to Python’s built-in. Note: the same approach is used for filter().
By contrast, py5 avoids the conflict by renaming the function to remap() instead.
- Linguagem predominante
- Rust
- Estrelas
- 69
- Forks
- 14
- Merge médio
- 15d 22h
- PRs com merge (30d)
- 3
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de processing/libprocessing
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
processing/libprocessing#233 ·
-
Dropping Python 3.10 support Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
processing/libprocessing#229 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
processing/libprocessing#201 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
processing/libprocessing#194 ·
-
documentation
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
processing/libprocessing#146 · 1 comentário ·
Todas as issues de processing/libprocessing
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
Eynzof/Hermes-CN-Desktop#616 ·
-
bug rules
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
-
app bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
IronCoreLabs/ironcore-alloy#346 ·
-
good first issue
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100