Skip to content

Commit d58c753

Browse files
Update translations
1 parent 683775e commit d58c753

File tree

5 files changed

+122
-33
lines changed

5 files changed

+122
-33
lines changed

c-api/init.po

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ msgid ""
1111
msgstr ""
1212
"Project-Id-Version: Python 3.11\n"
1313
"Report-Msgid-Bugs-To: \n"
14-
"POT-Creation-Date: 2025-05-23 16:05+0000\n"
14+
"POT-Creation-Date: 2025-06-13 16:17+0000\n"
1515
"PO-Revision-Date: 2023-05-24 02:09+0000\n"
1616
"Last-Translator: Rafael Fontenelle <rffontenelle@gmail.com>, 2025\n"
1717
"Language-Team: Portuguese (Brazil) (https://app.transifex.com/python-doc/"
@@ -2334,7 +2334,7 @@ msgstr ""
23342334

23352335
#: ../../c-api/init.rst:231 ../../c-api/init.rst:480 ../../c-api/init.rst:506
23362336
msgid "path (in module sys)"
2337-
msgstr ""
2337+
msgstr "path (no módulo sys)"
23382338

23392339
#: ../../c-api/init.rst:231 ../../c-api/init.rst:480 ../../c-api/init.rst:506
23402340
#: ../../c-api/init.rst:947 ../../c-api/init.rst:1389
@@ -2495,7 +2495,7 @@ msgstr "stdin (no módulo sys)"
24952495

24962496
#: ../../c-api/init.rst:1418
24972497
msgid "Py_Initialize (C function)"
2498-
msgstr ""
2498+
msgstr "Py_Initialize (função C)"
24992499

25002500
#: ../../c-api/init.rst:1448
25012501
msgid "close (in module os)"

c-api/intro.po

Lines changed: 112 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ msgid ""
1111
msgstr ""
1212
"Project-Id-Version: Python 3.11\n"
1313
"Report-Msgid-Bugs-To: \n"
14-
"POT-Creation-Date: 2025-05-02 15:33+0000\n"
14+
"POT-Creation-Date: 2025-06-13 16:17+0000\n"
1515
"PO-Revision-Date: 2023-05-24 02:09+0000\n"
1616
"Last-Translator: Rafael Fontenelle <rffontenelle@gmail.com>, 2025\n"
1717
"Language-Team: Portuguese (Brazil) (https://app.transifex.com/python-doc/"
@@ -518,6 +518,17 @@ msgid ""
518518
"objects that reference each other here; for now, the solution is \"don't do "
519519
"that.\")"
520520
msgstr ""
521+
"A contagem de referências é importante porque os computadores atuais têm um "
522+
"tamanho de memória finito (e frequentemente severamente limitado); ela conta "
523+
"quantos lugares diferentes existem que possuem uma :term:`referência forte` "
524+
"a um objeto. Tal lugar pode ser outro objeto, ou uma variável C global (ou "
525+
"estática), ou uma variável local em alguma função C. Quando a última :term:"
526+
"`referência forte` a um objeto é liberada (ou seja, sua contagem de "
527+
"referências se torna zero), o objeto é desalocado. Se ele contiver "
528+
"referências a outros objetos, essas referências são liberadas. Esses outros "
529+
"objetos podem ser desalocados por sua vez, se não houver mais referências a "
530+
"eles, e assim por diante. (Há um problema óbvio com objetos que referenciam "
531+
"uns aos outros aqui; por enquanto, a solução é \"não faça isso\".)"
521532

522533
#: ../../c-api/intro.rst:331
523534
msgid ""
@@ -537,6 +548,22 @@ msgid ""
537548
"``sizeof(Py_ssize_t) >= sizeof(void*)``). Thus, the reference count "
538549
"increment is a simple operation."
539550
msgstr ""
551+
"Contagens de referências são sempre manipuladas explicitamente. A maneira "
552+
"normal é usar a macro :c:func:`Py_INCREF` para obter uma nova referência a "
553+
"um objeto (ou seja, incrementar sua contagem de referências em um), e :c:"
554+
"func:`Py_DECREF` para liberar essa referência (ou seja, decrementar a "
555+
"contagem de referências em um). A macro :c:func:`Py_DECREF` é "
556+
"consideravelmente mais complexa do que a incref, pois deve verificar se a "
557+
"contagem de referências se torna zero e, em seguida, fazer com que o "
558+
"desalocador do objeto seja chamado. O desalocador é um ponteiro para função "
559+
"contido na estrutura de tipo do objeto. O desalocador específico do tipo "
560+
"cuida da liberação de referências para outros objetos contidos no objeto se "
561+
"este for um tipo de objeto composto, como uma lista, bem como de executar "
562+
"qualquer finalização adicional necessária. Não há chance de a contagem de "
563+
"referências transbordar; pelo menos tantos bits são usados ​​para armazenar a "
564+
"contagem de referência quantos forem os locais de memória distintos na "
565+
"memória virtual (presumindo ``sizeof(Py_ssize_t) >= sizeof(void*)``). "
566+
"Portanto, o incremento da contagem de referências é uma operação simples."
540567

541568
#: ../../c-api/intro.rst:347
542569
msgid ""
@@ -555,6 +582,21 @@ msgid ""
555582
"that are called from Python; the call mechanism guarantees to hold a "
556583
"reference to every argument for the duration of the call."
557584
msgstr ""
585+
"Não é necessário manter uma :term:`referência forte` (ou seja, incrementar a "
586+
"contagem de referências) para cada variável local que contém um ponteiro "
587+
"para um objeto. Em teoria, a contagem de referências do objeto aumenta em um "
588+
"quando a variável é feita para apontar para ele e diminui em um quando a "
589+
"variável sai do escopo. No entanto, esses dois se cancelam, portanto, no "
590+
"final, a contagem de referências não mudou. A única razão real para usar a "
591+
"contagem de referências é evitar que o objeto seja desalocado enquanto nossa "
592+
"variável estiver apontando para ele. Se sabemos que existe pelo menos uma "
593+
"outra referência ao objeto que vive pelo menos tanto quanto nossa variável, "
594+
"não há necessidade de tomar uma nova :term:`referência forte` (ou seja, "
595+
"incrementar a contagem de referências) temporariamente. Uma situação "
596+
"importante em que isso ocorre é em objetos que são passados como argumentos "
597+
"para funções C em um módulo de extensão que são chamados de Python; o "
598+
"mecanismo de chamada garante manter uma referência a todos os argumentos "
599+
"durante a chamada."
558600

559601
#: ../../c-api/intro.rst:363
560602
msgid ""
@@ -566,6 +608,14 @@ msgid ""
566608
"code path which allows control to flow back to the user from a :c:func:"
567609
"`Py_DECREF`, so almost any operation is potentially dangerous."
568610
msgstr ""
611+
"No entanto, uma armadilha comum é extrair um objeto de uma lista e mantê-lo "
612+
"por um tempo, sem tomar uma nova referência. Alguma outra operação poderia "
613+
"remover o objeto da lista, liberando essa referência e possivelmente "
614+
"desalocando-o. O perigo real é que operações aparentemente inocentes podem "
615+
"invocar código Python arbitrário que poderia fazer isso; existe um caminho "
616+
"de código que permite que o controle flua de volta para o usuário a partir "
617+
"de um :c:func:`Py_DECREF`, então quase qualquer operação é potencialmente "
618+
"perigosa."
569619

570620
#: ../../c-api/intro.rst:371
571621
msgid ""
@@ -576,6 +626,12 @@ msgid ""
576626
"This leaves the caller with the responsibility to call :c:func:`Py_DECREF` "
577627
"when they are done with the result; this soon becomes second nature."
578628
msgstr ""
629+
"Uma abordagem segura é sempre usar as operações genéricas (funções cujo nome "
630+
"começa com ``PyObject_``, ``PyNumber_``, ``PySequence_`` ou ``PyMapping_``). "
631+
"Essas operações sempre criam uma nova :term:`referência forte` (ou seja, "
632+
"incrementam a contagem de referências) do objeto que retornam. Isso deixa o "
633+
"chamador com a responsabilidade de chamar :c:func:`Py_DECREF` quando "
634+
"terminar com o resultado; isso logo se torna uma segunda natureza."
579635

580636
#: ../../c-api/intro.rst:382
581637
msgid "Reference Count Details"
@@ -597,6 +653,20 @@ msgid ""
597653
"said to *borrow* the reference. Nothing needs to be done for a :term:"
598654
"`borrowed reference`."
599655
msgstr ""
656+
"O comportamento da contagem de referências de funções na API C/Python é "
657+
"melhor explicado em termos de *propriedade de referências*. A propriedade "
658+
"pertence às referências, nunca aos objetos (os objetos não são possuídos: "
659+
"eles são sempre compartilhados). \"Possuir uma referência\" significa ser "
660+
"responsável por chamar Py_DECREF nela quando a referência não for mais "
661+
"necessária. A propriedade também pode ser transferida, o que significa que o "
662+
"código que recebe a propriedade da referência torna-se responsável por "
663+
"eventualmente efetuar um liberando ela chamando :c:func:`Py_DECREF` ou :c:"
664+
"func:`Py_XDECREF` quando não é mais necessário -- ou passando essa "
665+
"responsabilidade (geralmente para o responsável pela chamada). Quando uma "
666+
"função passa a propriedade de uma referência para seu chamador, diz-se que o "
667+
"chamador recebe uma *nova* referência. Quando nenhuma propriedade é "
668+
"transferida, diz-se que o chamador *toma emprestado* a referência. Nada "
669+
"precisa ser feito para uma :term:`referência emprestada`."
600670

601671
#: ../../c-api/intro.rst:397
602672
msgid ""
@@ -690,6 +760,13 @@ msgid ""
690760
"For example, this function sets all items of a list (actually, any mutable "
691761
"sequence) to a given item::"
692762
msgstr ""
763+
"É muito mais comum usar :c:func:`PyObject_SetItem` e amigos com itens cujas "
764+
"referências você está apenas pegando emprestado, como argumentos que foram "
765+
"passados para a função que você está escrevendo. Nesse caso, o comportamento "
766+
"deles em relação às referências é muito mais são, já que você não precisa "
767+
"tomar uma nova referência só para poder doá-la (\"mande-a ser roubada\"). "
768+
"Por exemplo, esta função define todos os itens de uma lista (na verdade, "
769+
"qualquer sequência mutável) para um determinado item::"
693770

694771
#: ../../c-api/intro.rst:476
695772
msgid ""
@@ -915,6 +992,11 @@ msgid ""
915992
"following example function shows some error cleanup. First, to remind you "
916993
"why you like Python, we show the equivalent Python code::"
917994
msgstr ""
995+
"Um exemplo simples de detecção de exceções e transmiti-las é mostrado no "
996+
"exemplo :c:func:`!sum_sequence` acima. Acontece que este exemplo não precisa "
997+
"limpar nenhuma referência de propriedade quando detecta um erro. A função de "
998+
"exemplo a seguir mostra alguma limpeza de erro. Primeiro, para lembrar por "
999+
"que você gosta de Python, mostramos o código Python equivalente::"
9181000

9191001
#: ../../c-api/intro.rst:664
9201002
msgid "Here is the corresponding C code, in all its glory::"
@@ -1108,6 +1190,13 @@ msgid ""
11081190
"macro:`!Py_DEBUG` is enabled in the Unix build, compiler optimization is "
11091191
"disabled."
11101192
msgstr ""
1193+
"Compilar o interpretador com a macro :c:macro:`!Py_DEBUG` definida produz o "
1194+
"que geralmente se entende por :ref:`uma construção de depuração do Python "
1195+
"<debug-build>`. :c:macro:`!Py_DEBUG` é habilitada na construção Unix "
1196+
"adicionando :option:`--with-pydebug` ao comando :file:`./configure`. Também "
1197+
"está implícito na presença da macro não específica do Python :c:macro:`!"
1198+
"_DEBUG`. Quando :c:macro:`!Py_DEBUG` está habilitado na construção do Unix, "
1199+
"a otimização do compilador é desabilitada."
11111200

11121201
#: ../../c-api/intro.rst:825
11131202
msgid ""
@@ -1153,71 +1242,71 @@ msgstr "tipo"
11531242

11541243
#: ../../c-api/intro.rst:327
11551244
msgid "Py_INCREF (C function)"
1156-
msgstr ""
1245+
msgstr "Py_INCREF (função C)"
11571246

11581247
#: ../../c-api/intro.rst:327
11591248
msgid "Py_DECREF (C function)"
1160-
msgstr ""
1249+
msgstr "Py_DECREF (função C)"
11611250

11621251
#: ../../c-api/intro.rst:403
11631252
msgid "PyList_SetItem (C function)"
1164-
msgstr ""
1253+
msgstr "PyList_SetItem (função C)"
11651254

11661255
#: ../../c-api/intro.rst:403
11671256
msgid "PyTuple_SetItem (C function)"
1168-
msgstr ""
1257+
msgstr "PyTuple_SetItem (função C)"
11691258

11701259
#: ../../c-api/intro.rst:474
11711260
msgid "set_all()"
1172-
msgstr ""
1261+
msgstr "set_all()"
11731262

11741263
#: ../../c-api/intro.rst:493
11751264
msgid "PyList_GetItem (C function)"
1176-
msgstr ""
1265+
msgstr "PyList_GetItem (função C)"
11771266

11781267
#: ../../c-api/intro.rst:493
11791268
msgid "PySequence_GetItem (C function)"
1180-
msgstr ""
1269+
msgstr "PySequence_GetItem (função C)"
11811270

11821271
#: ../../c-api/intro.rst:523
11831272
msgid "sum_list()"
1184-
msgstr ""
1273+
msgstr "sum_list()"
11851274

11861275
#: ../../c-api/intro.rst:555 ../../c-api/intro.rst:647
11871276
msgid "sum_sequence()"
1188-
msgstr ""
1277+
msgstr "sum_sequence()"
11891278

11901279
#: ../../c-api/intro.rst:590
11911280
msgid "PyErr_Occurred (C function)"
1192-
msgstr ""
1281+
msgstr "PyErr_Occurred (função C)"
11931282

11941283
#: ../../c-api/intro.rst:603
11951284
msgid "PyErr_SetString (C function)"
1196-
msgstr ""
1285+
msgstr "PyErr_SetString (função C)"
11971286

11981287
#: ../../c-api/intro.rst:603 ../../c-api/intro.rst:711
11991288
msgid "PyErr_Clear (C function)"
1200-
msgstr ""
1289+
msgstr "PyErr_Clear (função C)"
12011290

12021291
#: ../../c-api/intro.rst:627
12031292
msgid "exc_info (in module sys)"
12041293
msgstr "exc_info (no módulo sys)"
12051294

12061295
#: ../../c-api/intro.rst:662 ../../c-api/intro.rst:709
12071296
msgid "incr_item()"
1208-
msgstr ""
1297+
msgstr "incr_item()"
12091298

12101299
#: ../../c-api/intro.rst:711
12111300
msgid "PyErr_ExceptionMatches (C function)"
1212-
msgstr ""
1301+
msgstr "PyErr_ExceptionMatches (função C)"
12131302

12141303
#: ../../c-api/intro.rst:711
12151304
msgid "Py_XDECREF (C function)"
1216-
msgstr ""
1305+
msgstr "Py_XDECREF (função C)"
12171306

12181307
#: ../../c-api/intro.rst:737
12191308
msgid "Py_Initialize (C function)"
1220-
msgstr ""
1309+
msgstr "Py_Initialize (função C)"
12211310

12221311
#: ../../c-api/intro.rst:737
12231312
msgid "module"
@@ -1245,28 +1334,28 @@ msgstr "caminho"
12451334

12461335
#: ../../c-api/intro.rst:737
12471336
msgid "path (in module sys)"
1248-
msgstr ""
1337+
msgstr "path (no módulo sys)"
12491338

12501339
#: ../../c-api/intro.rst:772
12511340
msgid "Py_SetProgramName (C function)"
12521341
msgstr ""
12531342

12541343
#: ../../c-api/intro.rst:772
12551344
msgid "Py_GetPath (C function)"
1256-
msgstr ""
1345+
msgstr "Py_GetPath (função C)"
12571346

12581347
#: ../../c-api/intro.rst:772
12591348
msgid "Py_GetPrefix (C function)"
1260-
msgstr ""
1349+
msgstr "Py_GetPrefix (função C)"
12611350

12621351
#: ../../c-api/intro.rst:772
12631352
msgid "Py_GetExecPrefix (C function)"
1264-
msgstr ""
1353+
msgstr "Py_GetExecPrefix (função C)"
12651354

12661355
#: ../../c-api/intro.rst:772
12671356
msgid "Py_GetProgramFullPath (C function)"
1268-
msgstr ""
1357+
msgstr "Py_GetProgramFullPath (função C)"
12691358

12701359
#: ../../c-api/intro.rst:787
12711360
msgid "Py_IsInitialized (C function)"
1272-
msgstr ""
1361+
msgstr "Py_IsInitialized (função C)"

howto/logging-cookbook.po

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ msgid ""
1111
msgstr ""
1212
"Project-Id-Version: Python 3.11\n"
1313
"Report-Msgid-Bugs-To: \n"
14-
"POT-Creation-Date: 2025-05-02 15:33+0000\n"
14+
"POT-Creation-Date: 2025-06-13 16:17+0000\n"
1515
"PO-Revision-Date: 2023-05-24 02:11+0000\n"
1616
"Last-Translator: Rafael Fontenelle <rffontenelle@gmail.com>, 2024\n"
1717
"Language-Team: Portuguese (Brazil) (https://app.transifex.com/python-doc/"
@@ -67,7 +67,7 @@ msgstr ""
6767
"além disso, o código da aplicação pode definir e configurar um logger pai em "
6868
"um módulo e criar (mas não configurar) um logger filho em um módulo "
6969
"separado, e todas as chamadas de logger para o filho passarão para o pai. "
70-
"Aqui está um módulo prinicipal::"
70+
"Aqui está um módulo principal::"
7171

7272
#: ../../howto/logging-cookbook.rst:56
7373
msgid "Here is the auxiliary module::"

potodo.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,16 @@
55
- license.po 95 / 99 ( 95.0% translated).
66

77

8-
# c-api (56.90% done)
8+
# c-api (57.66% done)
99

1010
- exceptions.po 193 / 347 ( 55.0% translated).
1111
- float.po 14 / 35 ( 40.0% translated).
1212
- frame.po 20 / 24 ( 83.0% translated).
1313
- gcsupport.po 9 / 42 ( 21.0% translated).
1414
- import.po 39 / 53 ( 73.0% translated).
15-
- init.po 122 / 372 ( 32.0% translated).
15+
- init.po 124 / 372 ( 33.0% translated).
1616
- init_config.po 135 / 396 ( 34.0% translated).
17-
- intro.po 95 / 127 ( 74.0% translated).
17+
- intro.po 126 / 127 ( 99.0% translated).
1818
- long.po 30 / 59 ( 50.0% translated).
1919
- memory.po 53 / 189 ( 28.0% translated).
2020
- module.po 61 / 109 ( 55.0% translated).
@@ -324,5 +324,5 @@
324324
- 3.8.po 468 / 469 ( 99.0% translated).
325325

326326

327-
# TOTAL (67.82% done)
327+
# TOTAL (67.88% done)
328328

stats.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"completion": "67.82%", "translated": 37852, "entries": 55811, "updated_at": "2025-06-20T23:54:39+00:00Z"}
1+
{"completion": "67.88%", "translated": 37885, "entries": 55811, "updated_at": "2025-06-21T23:53:19+00:00Z"}

0 commit comments

Comments
 (0)