8000 Update translations from Transifex · python/python-docs-pt-br@7608d47 · GitHub
[go: up one dir, main page]

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 7608d47

Browse files
author
github-actions
committed
Update translations from Transifex
1 parent 09d6ad9 commit 7608d47

File tree

5 files changed

+260 8000
-32
lines changed

5 files changed

+260
-32
lines changed

faq/library.po

Lines changed: 115 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ msgid ""
1717
msgstr ""
1818
"Project-Id-Version: Python 3.12\n"
1919
"Report-Msgid-Bugs-To: \n"
20-
"POT-Creation-Date: 2024-04-19 14:13+0000\n"
20+
"POT-Creation-Date: 2024-04-26 14:13+0000\n"
2121
"PO-Revision-Date: 2021-06-28 00:52+0000\n"
2222
"Last-Translator: Rafael Fontenelle <rffontenelle@gmail.com>, 2024\n"
2323
"Language-Team: Portuguese (Brazil) (https://app.transifex.com/python-doc/"
@@ -119,7 +119,7 @@ msgid ""
119119
"interpreter."
120120
msgstr ""
121121
"Você precisa fazer duas coisas: o arquivo do script deve ser executável e a "
122-
"primeira linha deve começar com \"#!\" seguido do caminho do interpretador "
122+
"primeira linha deve começar com ``#!`` seguido do caminho do interpretador "
123123
"Python."
124124

125125
#: ../../faq/library.rst:53
@@ -211,6 +211,12 @@ msgid ""
211211
"but there don't seem to be any currently maintained OSes that fall into this "
212212
"category."
213213
msgstr ""
214+
"O módulo :mod:`curses` provê recursos básicos de curses, bem como muitas "
215+
"funções adicionais de ncurses e curses SYSV, como cor, suporte a conjuntos "
216+
"de caracteres alternativos, pads e suporte a mouse. Isso significa que o "
217+
"módulo não é compatível com sistemas operacionais que possuem apenas "
218+
"maldições BSD, mas não parece haver nenhum sistema operacional mantido "
219+
"atualmente que se enquadre nesta categoria."
214220

215221
#: ../../faq/library.rst:111
216222
msgid "Is there an equivalent to C's onexit() in Python?"
@@ -221,6 +227,8 @@ msgid ""
221227
"The :mod:`atexit` module provides a register function that is similar to "
222228
"C's :c:func:`!onexit`."
223229
msgstr ""
230+
"O módulo :mod:`atexit` fornece uma função de registro similar ao :c:func:`!"
231+
"onexit` do C."
224232

225233
#: ../../faq/library.rst:118
226234
msgid "Why don't my signal handlers work?"
@@ -236,7 +244,7 @@ msgstr ""
236244

237245
#: ../../faq/library.rst:125
238246
msgid "so it should be declared with two parameters::"
239-
msgstr ""
247+
msgstr "portanto, isso deve ser declarado com dois parâmetros::"
240248

241249
#: ../../faq/library.rst:132
242250
msgid "Common tasks"
@@ -252,7 +260,7 @@ msgid ""
252260
"examples in the docstrings for a module and runs them, comparing the output "
253261
"with the expected output given in the docstring."
254262
msgstr ""
255-
"A Python vem com dois frameworks de teste. O :mod:`doctest` busca por "
263+
"A Python vem com dois frameworks de teste. O módulo :mod:`doctest` busca por "
256264
"exemplos nas docstrings de um módulo e os executa, comparando o resultado "
257265
"com a saída esperada informada na docstring."
258266

@@ -274,6 +282,13 @@ msgid ""
274282
"avoid depending on mutating global variables, since this makes testing much "
275283
"more difficult to do."
276284
msgstr ""
285+
"Para facilitar os testes, você deve usar um bom design modular em seu "
286+
"programa. Seu programa deve ter quase todas as funcionalidades encapsuladas "
287+
"em funções ou métodos de classe -- e isso às vezes tem o efeito "
288+
"surpreendente e agradável de fazer o programa executar mais rápido (porque "
289+
"os acessos às variáveis locais são mais rápidos que os acessos globais). "
290+
"Além disso, o programa deve evitar depender de variáveis globais mutantes, "
291+
"pois isso torna os testes muito mais difíceis de serem realizados."
277292

278293
#: ../../faq/library.rst:152
279294
msgid "The \"global main logic\" of your program may be as simple as ::"
@@ -294,12 +309,23 @@ msgid ""
294309
"the \"production code\", since this makes it easy to find bugs and even "
295310
"design flaws earlier."
296311
msgstr ""
312+
"Depois que seu programa estiver organizado como uma coleção tratável de "
313+
"comportamentos de funções e classes, você deverá escrever funções de teste "
314+
"que exercitem os comportamentos. Um conjunto de testes que automatiza uma "
315+
"sequência de testes pode ser associado a cada módulo. Parece muito "
316+
"trabalhoso, mas como o Python é tão conciso e flexível, é surpreendentemente "
317+
"fácil. Você pode tornar a codificação muito mais agradável e divertida "
318+
"escrevendo suas funções de teste em paralelo com o \"código de produção\", "
319+
"pois isso torna mais fácil encontrar bugs e até mesmo falhas de design mais "
320+
"cedo."
297321

298322
#: ../../faq/library.rst:167
299323
msgid ""
300324
"\"Support modules\" that are not intended to be the main module of a program "
301325
"may include a self-test of the module. ::"
302326
msgstr ""
327+
"Os \"módulos de suporte\" que não se destinam a ser o módulo principal de um "
328+
"programa podem incluir um autoteste do módulo. ::"
303329

304330
#: ../../faq/library.rst:173
305331
msgid ""
@@ -322,6 +348,11 @@ msgid ""
322348
"docstrings is `epydoc <https://epydoc.sourceforge.net/>`_. `Sphinx <https://"
323349
"www.sphinx-doc.org>`_ can also include docstring content."
324350
msgstr ""
351+
"O módulo :mod:`pydoc` pode criar HTML a partir das strings de documentos em "
352+
"seu código-fonte Python. Uma alternativa para criar documentação de API "
353+
"puramente a partir de docstrings é `epydoc <https://epydoc.sourceforge.net/"
354+
">`_. `Sphinx <https://www.sphinx-doc.org>`_ também pode incluir conteúdo "
355+
"docstring."
325356

326357
#: ../../faq/library.rst:188
327358
msgid "How do I get a single keypress at a time?"
@@ -349,10 +380,13 @@ msgid ""
349380
"module. The :mod:`threading` module builds convenient abstractions on top of "
350381
"the low-level primitives provided by the :mod:`_thread` module."
351382
msgstr ""
383+
"Certifique-se de usar o módulo :mod:`threading` e não o módulo :mod:"
384+
"`_thread`. O módulo :mod:`threading` constrói abstrações convenientes sobre "
385+
"as primitivas de baixo nível fornecidas pelo módulo :mod:`_thread`."
352386

353387
#: ../../faq/library.rst:245
354388
msgid "None of my threads seem to run: why?"
355-
msgstr "Nenhuma de minhas threads parece funcionar, por quê?"
389+
msgstr "Nenhuma de minhas threads parece funcionar, por que?"
356390

357391
#: ../../faq/library.rst:247
358392
msgid ""
@@ -377,6 +411,10 @@ msgid ""
377411
"run sequentially, one at a time! The reason is that the OS thread scheduler "
378412
"doesn't sta CEB2 rt a new thread until the previous thread is blocked."
379413
msgstr ""
414+
"Mas agora (em muitas plataformas) as threads não funcionam em paralelo, mas "
415+
"parecem funcionar sequencialmente, um de cada vez! O motivo é que o "
416+
"agendador de threads do sistema operacional não inicia uma nova thread até "
417+
"que a thread anterior seja bloqueada."
380418

381419
#: ../../faq/library.rst:269
382420
msgid "A simple fix is to add a tiny sleep to the start of the run function::"
@@ -392,16 +430,23 @@ msgid ""
392430
"the queue when it finishes, and let the main thread read as many tokens from "
393431
"the queue as there are threads."
394432
msgstr ""
433+
"Em vez de tentar adivinhar um bom valor de atraso para :func:`time.sleep`, é "
434+
"melhor usar algum tipo de mecanismo de semáforo. Uma ideia é usar o módulo :"
435+
"mod:`queue` para criar um objeto fila, deixar cada thread anexar um token à "
436+
"fila quando terminar e deixar a thread principal ler tantos tokens da fila "
437+
"quantos threads houver."
395438

396439
#: ../../faq/library.rst:290
397440
msgid "How do I parcel out work among a bunch of worker threads?"
398-
msgstr ""
441+
msgstr "Como distribuo o trabalho entre várias threads de trabalho?"
399442

400443
#: ../../faq/library.rst:292
401444
msgid ""
402445
"The easiest way is to use the :mod:`concurrent.futures` module, especially "
403446
"the :mod:`~concurrent.futures.ThreadPoolExecutor` class."
404447
msgstr ""
448+
"A maneira mais fácil é usar o módulo :mod:`concurrent.futures`, "
449+
"especialmente a classe :mod:`~concurrent.futures.ThreadPoolExecutor`."
405450

406451
#: ../../faq/library.rst:295
407452
msgid ""
@@ -412,6 +457,13 @@ msgid ""
412457
"``.get()`` method to return them. The class will take care of the locking "
413458
"necessary to ensure that each job is handed out exactly once."
414459
msgstr ""
460+
"Ou, se quiser um controle preciso sobre o algoritmo de despacho, você pode "
461+
"escrever sua própria lógica manualmente. Use o módulo :mod:`queue` para "
462+
"criar uma fila contendo uma lista de tarefas. A classe :class:`~queue.Queue` "
463+
"mantém uma lista de objetos e possui um método ``.put(obj)`` que adiciona "
464+
"itens à fila e um método ``.get()`` para retorná-los. A classe cuidará do "
465+
"bloqueio necessário para garantir que cada trabalho seja entregue exatamente "
466+
"uma vez."
415467

416468
#: ../../faq/library.rst:302
417469
msgid "Here's a trivial example::"
@@ -426,7 +478,7 @@ msgid ""
426478
"Consult the module's documentation for more details; the :class:`~queue."
427479
"Queue` class provides a featureful interface."
428480
msgstr ""
429-
"Consulte a documentação dos módulos para mais detalhes; a classe :class:"
481+
"Consulte a documentação do módulo para mais detalhes; a classe :class:"
430482
"`~queue.Queue` fornece uma interface com recursos."
431483

432484
#: ../../faq/library.rst:363
@@ -442,6 +494,13 @@ msgid ""
442494
"instruction and therefore all the C implementation code reached from each "
443495
"instruction is therefore atomic from the point of view of a Python program."
444496
msgstr ""
497+
"Um :term:`bloqueio global do interpretador` (GIL) é usado internamente para "
498+
"garantir que apenas um thread seja executado na VM Python por vez. Em geral, "
499+
"Python oferece alternar entre threads apenas entre instruções de bytecode; a "
500+
"frequência com que ele muda pode ser definida via :func:`sys."
501+
"setswitchinterval`. Cada instrução de bytecode e, portanto, todo o código de "
502+
"implementação C alcançado por cada instrução é, portanto, atômico do ponto "
503+
"de vista de um programa Python."
445504

446505
#: ../../faq/library.rst:372
447506
msgid ""
@@ -450,12 +509,18 @@ msgid ""
450509
"shared variables of built-in data types (ints, lists, dicts, etc) that "
451510
"\"look atomic\" really are."
452511
msgstr ""
512+
"Em teoria, isso significa que uma contabilidade exata requer um entendimento "
513+
"exato da implementação do bytecode PVM. Na prática, isso significa que as "
514+
"operações em variáveis compartilhadas de tipos de dados integrados "
515+
"(inteiros, listas, dicionarios, etc.) que \"parecem atômicas\" realmente são."
453516

454517
#: ../../faq/library.rst:377
455518
msgid ""
456519
"For example, the following operations are all atomic (L, L1, L2 are lists, "
457520
"D, D1, D2 are dicts, x, y are objects, i, j are ints)::"
458521
msgstr ""
522+
"Por exemplo, as seguintes operações são todas atômicas (L, L1, L2 são "
523+
"listas, D, D1, D2 são dicionários, x, y são objetos, i, j são inteiros)::"
459524

460525
#: ../../faq/library.rst:392
461526
msgid "These aren't::"
@@ -468,6 +533,11 @@ msgid ""
468533
"can affect things. This is especially true for the mass updates to "
469534
"dictionaries and lists. When in doubt, use a mutex!"
470535
msgstr ""
536+
"Operações que substituem outros objetos podem invocar o método :meth:"
537+
"`~object.__del__` desses outros objetos quando sua contagem de referências "
538+
"chega a zero, e isso pode afetar as coisas. Isto é especialmente verdadeiro "
539+
"para as atualizações em massa de dicionários e listas. Em caso de dúvida, "
540+
"use um mutex!"
471541

472542
#: ../../faq/library.rst:406
473543
msgid "Can't we get rid of the Global Interpreter Lock?"
@@ -480,6 +550,11 @@ msgid ""
480550
"multi-threaded Python program effectively only uses one CPU, due to the "
481551
"insistence that (almost) all Python code can only run while the GIL is held."
482552
msgstr ""
553+
"O :term:`bloqueio global do interpretador` (GIL) é frequentemente visto como "
554+
"um obstáculo para a implantação do Python em máquinas servidoras "
555+
"multiprocessadas de ponta, porque um programa Python multi-threaded "
556+
"efetivamente usa apenas uma CPU, devido à insistência de que (quase) todo "
557+
"código Python só pode ser executado enquanto o GIL é mantido."
483558

484559
#: ../../faq/library.rst:415
485560
msgid ""
@@ -492,6 +567,14 @@ msgid ""
492567
"due to the amount of fine-grained locking necessary to compensate for the "
493568
"removal of the GIL."
494569
msgstr ""
570+
"Na época do Python 1.5, Greg Stein implementou um conjunto abrangente de "
571+
"patches (os patches de \"threading livre\") que removeu o GIL e o substituiu "
572+
"por bloqueio refinado. Adam Olsen recentemente fez um experimento semelhante "
573+
"em seu projeto `python-safethread <https://code.google.com/archive/p/python-"
574+
"safethread>`_. Infelizmente, ambos os experimentos exibiram uma queda "
575+
"acentuada no desempenho de thread único (pelo menos 30% mais lento), devido "
576+
"à quantidade de bloqueio de granulação fina necessária para compensar a "
577+
"remoção do GIL."
495578

496579
#: ../../faq/library.rst:423
497580
msgid ""
@@ -503,6 +586,13 @@ msgid ""
503586
"module provides a lower-level API in case you want more control over "
504587
"dispatching of tasks."
505588
msgstr ""
589+
"Isso não significa que você não possa fazer bom uso do Python em máquinas "
590+
"com várias CPUs! Você só precisa ser criativo ao dividir o trabalho entre "
591+
"vários *processos* em vez de vários *threads*. A classe :class:`~concurrent."
592+
"futures.ProcessPoolExecutor` no novo módulo :mod:`concurrent.futures` "
593+
"fornece uma maneira fácil de fazer isso; o módulo :mod:`multiprocessing` "
594+
"fornece uma API de nível inferior caso você queira mais controle sobre o "
595+
"envio de tarefas."
506596

507597
#: ../../faq/library.rst:431
508598
msgid ""
@@ -512,6 +602,11 @@ msgid ""
512602
"work done. Some standard library modules such as :mod:`zlib` and :mod:"
513603
"`hashlib` already do this."
514604
msgstr ""
605+
"O uso criterioso de extensões C também ajudará; se você usar uma extensão C "
606+
"para executar uma tarefa demorada, a extensão poderá liberar o GIL enquanto "
607+
"o thread de execução estiver no código C e permitir que outros threads "
608+
"realizem algum trabalho. Alguns módulos de biblioteca padrão como :mod:"
609+
"`zlib` e :mod:`hashlib` já fazem isso."
515610

516611
#: ../../faq/library.rst:437
517612
msgid ""
@@ -524,6 +619,15 @@ msgid ""
524619
"types have their own free list; these free lists would have to be moved to "
525620
"the interpreter state. And so on."
526621
msgstr ""
622+
"Foi sugerido que o GIL deveria ser um bloqueio por estado por interpretador, "
623+
"em vez de verdadeiramente global; os interpretadores não seriam capazes de "
624+
"compartilhar objetos. Infelizmente, isso também não é provável que aconteça. "
625+
"Seria uma quantidade enorme de trabalho, porque muitas implementações de "
626+
"objetos atualmente possuem estado global. Por exemplo, inteiros pequenos e "
627+
"strings curtas são armazenados em cache; esses caches teriam que ser movidos "
628+
"para o estado de interpretador. Outros tipos de objetos possuem sua própria "
629+
"lista livre; essas listas livres teriam que ser movidas para o estado de "
630+
"interpretador. E assim por diante."
527631

528632
#: ../../faq/library.rst:446
529633
msgid ""
@@ -532,6 +636,10 @@ msgid ""
532636
"extensions are being written at a faster rate than you can convert them to "
533637
"store all their global state in the interpreter state."
534638
msgstr ""
639+
"E duvido que isso possa ser feito em tempo finito, porque o mesmo problema "
640+
"existe para extensões de terceiros. É provável que extensões de terceiros "
641+
"estejam sendo gravadas em uma taxa mais rápida do que você pode convertê-las "
642+
"para armazenar todo o seu estado global no estado do interpretador."
535643

536644
#: ../../faq/library.rst:451
537645
msgid ""

0 commit comments

Comments
 (0)
0