1010# Alexandre B A Villares, 2021
1111# Mariana Costa <[email protected] >, 20211212# a76d6fb6142d7607ab0526dcbddb02d7_7bf0da0 <3b5fb0f281c8dfb4c0170f2ee2a6cfcf_843623>, 2021
13- # Rafael Fontenelle <[email protected] >, 20241413# Adorilson Bezerra <[email protected] >, 202414+ # Rafael Fontenelle <[email protected] >, 20241515#
1616#, fuzzy
1717msgid ""
1818msgstr ""
1919"Project-Id-Version : Python 3.13\n "
2020"Report-Msgid-Bugs-To : \n "
21- "POT-Creation-Date : 2024-07-29 04:06 +0000\n "
21+ "POT-Creation-Date : 2024-08-09 16:36 +0000\n "
2222"PO-Revision-Date : 2021-06-28 00:52+0000\n "
23- "Last-Translator : Adorilson Bezerra <adorilson @gmail.com>, 2024\n "
23+ "Last-Translator : Rafael Fontenelle <rffontenelle @gmail.com>, 2024\n "
2424"Language-Team : Portuguese (Brazil) (https://app.transifex.com/python-doc/ "
2525"teams/5390/pt_BR/)\n "
2626"MIME-Version : 1.0\n "
@@ -568,6 +568,14 @@ msgid ""
568568"containing this work, although it may not be completely functional in this "
569569"release."
570570msgstr ""
571+ "Com a aprovação da :pep:`703`, o trabalho está em andamento para remover a "
572+ "GIL da implementação CPython do Python. Inicialmente, ele será implementado "
573+ "como um sinalizador opcional de compilador ao construir o interpretador, e "
574+ "assim construções separadas estarão disponíveis com e sem a GIL. A longo "
575+ "prazo, a esperança é estabelecer uma única construção, uma vez que as "
576+ "implicações de desempenho da remoção do GIL sejam totalmente compreendidas. "
577+ "O Python 3.13 provavelmente será a primeira versão contendo esse trabalho, "
578+ "embora possa não ser completamente funcional nesta versão."
571579
572580#: ../../faq/library.rst:422
573581msgid ""
@@ -583,6 +591,18 @@ msgid ""
583591"compensate for the removal of the GIL. The Python 3.9 fork is the first "
584592"attempt at removing the GIL with an acceptable performance impact."
585593msgstr ""
594+ "O trabalho atual para remover a GIL é baseado em um `fork do Python 3.9 com "
595+ "a GIL removida <https://github.com/colesbury/nogil>`_ por Sam Gross. Antes "
596+ "disso, na época do Python 1.5, Greg Stein implementou um conjunto abrangente "
597+ "de patches (os patches de \" threads livres\" ) que removeu a GIL e a "
598+ "substituiu por um travamento de granulação fina. Adam Olsen fez um "
599+ "experimento semelhante em seu projeto `python-safethread <https://code."
600+ "google.com/archive/p/python-safethread>`_. Infelizmente, ambos os "
601+ "experimentos iniciais exibiram uma queda acentuada no desempenho de thread "
602+ "único (pelo menos 30% mais lento), devido à quantidade de travamento de "
603+ "granulação fina necessária para compensar a remoção da GIL. O fork do Python "
604+ "3.9 é a primeira tentativa de remover a GIL com um impacto aceitável no "
605+ "desempenho."
586606
587607#: ../../faq/library.rst:437
588608msgid ""
@@ -594,6 +614,13 @@ msgid ""
594614"doing so; the :mod:`multiprocessing` module provides a lower-level API in "
595615"case you want more control over dispatching of tasks."
596616msgstr ""
617+ "A presença da GIL nas versões atuais do Python não significa que você não "
618+ "pode fazer bom uso do Python em máquinas com várias CPUs! Você só precisa "
619+ "ser criativo ao dividir o trabalho entre vários *processos* em vez de vários "
620+ "*threads*. A classe :class:`~concurrent.futures.ProcessPoolExecutor` no novo "
621+ "módulo :mod:`concurrent.futures` fornece uma maneira fácil de fazer isso; o "
622+ "módulo :mod:`multiprocessing` fornece uma API de nível inferior, caso você "
623+ "queira mais controle sobre o despacho de tarefas."
597624
598625#: ../../faq/library.rst:446
599626msgid ""
@@ -619,6 +646,14 @@ msgid ""
619646"since these must be written with multiple interpreters in mind in order to "
620647"be usable, so many older extension modules will not be usable."
621648msgstr ""
649+ "Uma abordagem alternativa para reduzir o impacto da GIL é fazer da GIL uma "
650+ "trava por estado do interpretador em vez de verdadeiramente global. Isso "
651+ "foi :ref:`implementado pela primeira vez no Python 3.12 <whatsnew312-"
652+ "pep684>` e está disponível na API C. Uma interface Python para ele é "
653+ "esperada no Python 3.13. A principal limitação para ele no momento "
654+ "provavelmente são módulos de extensão de terceiros, já que estes devem ser "
655+ "escritos com múltiplos interpretadores em mente para serem utilizáveis, "
656+ "então muitos módulos de extensão mais antigos não serão utilizáveis."
622657
623658#: ../../faq/library.rst:462
624659msgid "Input and Output"
@@ -634,7 +669,7 @@ msgid ""
634669"see the :mod:`os` module. The two functions are identical; :func:`~os."
635670"unlink` is simply the name of the Unix system call for this function."
636671msgstr ""
637- "Use ``os.remove(filename )`` ou ``os.unlink(filename )``;para documentação, "
672+ "Use ``os.remove(arquivo )`` ou ``os.unlink(arquivo )``; para documentação, "
638673"veja o módulo :mod:`os`. As duas funções são idênticas; :func:`~os.unlink` é "
639674"simplesmente o nome da chamada do sistema para esta função no Unix."
640675
@@ -646,10 +681,17 @@ msgid ""
646681"directories as long as they're empty; if you want to delete an entire "
647682"directory tree and its contents, use :func:`shutil.rmtree`."
648683msgstr ""
684+ "Para remover um diretório, use :func:`os.rmdir`; use :func:`os.mkdir` para "
685+ "criar um. ``os.makedirs(caminho)`` criará quaisquer diretórios "
686+ "intermediários em ``path`` que não existam. ``os.removedirs(caminho)`` "
687+ "removerá diretórios intermediários, desde que estejam vazios; se quiser "
688+ "excluir toda uma árvore de diretórios e seu conteúdo, use :func:`shutil."
689+ "rmtree`."
649690
650691#: ../../faq/library.rst:477
651692msgid "To rename a file, use ``os.rename(old_path, new_path)``."
652- msgstr "Para renomear um arquivos, use ``os.rename(old_path, new_path)``."
693+ msgstr ""
694+ "Para renomear um arquivos, use ``os.rename(caminho_antigo, caminho_novo)``."
653695
654696#: ../../faq/library.rst:479
655697msgid ""
@@ -658,13 +700,20 @@ msgid ""
658700"There's also ``os.ftruncate(fd, offset)`` for files opened with :func:`os."
659701"open`, where *fd* is the file descriptor (a small integer)."
660702msgstr ""
703+ "Para truncar um arquivo, abra-o usando ``f = open(arquivo, \" rb+\" )``, e use "
704+ "``f.truncate(posição)``; a posição tem como padrão a posição atual de busca. "
705+ "Há também ``os.ftruncate(fd, posição)`` para arquivos abertos com :func:`os."
706+ "open`, onde *fd* é o descritor de arquivo (um pequeno inteiro)."
661707
662708#: ../../faq/library.rst:484
663709msgid ""
664710"The :mod:`shutil` module also contains a number of functions to work on "
665711"files including :func:`~shutil.copyfile`, :func:`~shutil.copytree`, and :"
666712"func:`~shutil.rmtree`."
667713msgstr ""
714+ "O módulo :mod:`shutil` também contém uma série de funções para trabalhar em "
715+ "arquivos, incluindo :func:`~shutil.copyfile`, :func:`~shutil.copytree` e :"
716+ "func:`~shutil.rmtree`."
668717
669718#: ../../faq/library.rst:490
670719msgid "How do I copy a file?"
@@ -680,6 +729,13 @@ msgid ""
680729"permissions and metadata, though using :func:`shutil.copy2` instead will "
681730"preserve most (though not all) of it."
682731msgstr ""
732+ "O módulo :mod:`shutil` contém uma função :func:`~shutil.copyfile`. Observe "
733+ "que em volumes NTFS do Windows, ele não copia `fluxos de dados alternativos "
734+ "<https://en.wikipedia.org/wiki/NTFS#Alternate_data_stream_(ADS)>`_ nem "
735+ "`forks de recursos <https://en.wikipedia.org/wiki/Resource_fork>`__ em "
736+ "volumes HFS+ do macOS, embora ambos sejam raramente usados agora. Ele também "
737+ "não copia permissões de arquivo e metadados, embora usar :func:`shutil."
738+ "copy2` em vez disso preserve a maioria (embora não todos) deles."
683739
684740#: ../../faq/library.rst:503
685741msgid "How do I read (or write) binary data?"
@@ -691,25 +747,35 @@ msgid ""
691747"`struct` module. It allows you to take a string containing binary data "
692748"(usually numbers) and convert it to Python objects; and vice versa."
693749msgstr ""
750+ "Para ler ou escrever formatos de dados binários complexos, é melhor usar o "
751+ "módulo :mod:`struct`. Ele permite que você pegue uma string contendo dados "
752+ "binários (geralmente números) e a converta em objetos Python; e vice-versa."
694753
695754#: ../../faq/library.rst:509
696755msgid ""
697756"For example, the following code reads two 2-byte integers and one 4-byte "
698757"integer in big-endian format from a file::"
699758msgstr ""
759+ "Por exemplo, o código a seguir lê dois inteiros de 2 bytes e um inteiro de 4 "
760+ "bytes no formato big-endian de um arquivo:"
700761
701762#: ../../faq/library.rst:518
702763msgid ""
703764"The '>' in the format string forces big-endian data; the letter 'h' reads "
704765"one \" short integer\" (2 bytes), and 'l' reads one \" long integer\" (4 "
705766"bytes) from the string."
706767msgstr ""
768+ "O '>' na string de formato força dados big-endian; a letra 'h' lê um "
769+ "\" inteiro curto\" (2 bytes) e 'l' lê um \" inteiro longo\" (4 bytes) da "
770+ "string."
707771
708772#: ../../faq/library.rst:522
709773msgid ""
710774"For data that is more regular (e.g. a homogeneous list of ints or floats), "
711775"you can also use the :mod:`array` module."
712776msgstr ""
777+ "Para dados mais regulares (por exemplo, uma lista homogênea de ints ou "
778+ "floats), você também pode usar o módulo :mod:`array`."
713779
714780#: ../../faq/library.rst:527
715781msgid ""
@@ -718,6 +784,10 @@ msgid ""
718784"instead (the default), the file will be open in text mode and ``f.read()`` "
719785"will return :class:`str` objects rather than :class:`bytes` objects."
720786msgstr ""
787+ "Para ler e escrever dados binários, é obrigatório abrir o arquivo no modo "
788+ "binário (aqui, passando ``\" rb\" `` para :func:`open`). Se você usar "
789+ "``\" r\" `` em vez disso (o padrão), o arquivo será aberto no modo texto e ``f."
790+ "read()`` retornará objetos :class:`str` em vez de objetos :class:`bytes`."
721791
722792#: ../../faq/library.rst:535
723793msgid "I can't seem to use os.read() on a pipe created with os.popen(); why?"
@@ -731,18 +801,23 @@ msgid ""
731801"function. Thus, to read *n* bytes from a pipe *p* created with :func:`os."
732802"popen`, you need to use ``p.read(n)``."
733803msgstr ""
804+ ":func:`os.read` é uma função de baixo nível que pega um descritor de "
805+ "arquivo, um pequeno inteiro representando o arquivo aberto. :func:`os.popen` "
806+ "cria um objeto arquivo de alto nível, o mesmo tipo retornado pela função "
807+ "embutida :func:`open`. Assim, para ler *n* bytes de um pipe *p* criado com :"
808+ "func:`os.popen`, você precisa usar ``p.read(n)``."
734809
735810#: ../../faq/library.rst:623
736811msgid "How do I access the serial (RS232) port?"
737812msgstr "Como acesso a porta serial (RS232)?"
738813
739814#: ../../faq/library.rst:625
740815msgid "For Win32, OSX, Linux, BSD, Jython, IronPython:"
741- msgstr ""
816+ msgstr "Para Win32, OSX, Linux, BSD, Jython, IronPython: "
742817
743818#: ../../faq/library.rst:627
744819msgid ":pypi:`pyserial`"
745- msgstr ""
820+ msgstr ":pypi:`pyserial` "
746821
747822#: ../../faq/library.rst:629
748823msgid "For Unix, see a Usenet post by Mitch Chapman:"
@@ -761,6 +836,8 @@ msgid ""
761836"Python :term:`file objects <file object>` are a high-level layer of "
762837"abstraction on low-level C file descriptors."
763838msgstr ""
839+ "Os :term:`objetos arquivos <file object>` do Python são uma camada de alto "
840+ "nível de abstração em descritores de arquivo C de baixo nível."
764841
765842#: ../../faq/library.rst:640
766843msgid ""
@@ -770,6 +847,11 @@ msgid ""
770847"descriptor. This also happens automatically in ``f``'s destructor, when "
771848"``f`` becomes garbage."
772849msgstr ""
850+ "Para a maioria dos objetos arquivo que você cria em Python por meio da "
851+ "função embutida :func:`open`, ``f.close()`` marca o objeto arquivo Python "
852+ "como fechado do ponto de vista do Python e também organiza o fechamento do "
853+ "descritor de arquivo C subjacente. Isso também acontece automaticamente no "
854+ "destrutor de ``f``, quando ``f`` se torna lixo."
773855
774856#: ../../faq/library.rst:646
775857msgid ""
@@ -778,32 +860,43 @@ msgid ""
778860"marks the Python-level file object as being closed, but does *not* close the "
779861"associated C file descriptor."
780862msgstr ""
863+ "Mas stdin, stdout e stderr são tratados de forma especial pelo Python, "
864+ "devido ao status especial que também lhes é dado pelo C. Executar ``sys."
865+ "stdout.close()`` marca o objeto arquivo de nível Python como fechado, mas "
866+ "*não* fecha o descritor de arquivo C associado."
781867
782868#: ../../faq/library.rst:651
783869msgid ""
784870"To close the underlying C file descriptor for one of these three, you should "
785871"first be sure that's what you really want to do (e.g., you may confuse "
786872"extension modules trying to do I/O). If it is, use :func:`os.close`::"
787873msgstr ""
874+ "Para fechar o descritor de arquivo C subjacente para um desses três, você "
875+ "deve primeiro ter certeza de que é isso que você realmente quer fazer (por "
876+ "exemplo, você pode confundir módulos de extensão tentando fazer E/S). Se "
877+ "for, use :func:`os.close`::"
788878
789879#: ../../faq/library.rst:659
790880msgid "Or you can use the numeric constants 0, 1 and 2, respectively."
791- msgstr "Ou você pode usar as constantes numérias 0, 1 e 2, respectivamente."
881+ msgstr "Ou você pode usar as constantes numéricas 0, 1 e 2, respectivamente."
792882
793883#: ../../faq/library.rst:663
794884msgid "Network/Internet Programming"
795885msgstr "Programação Rede / Internet"
796886
797887#: ../../faq/library.rst:666
798888msgid "What WWW tools are there for Python?"
799- msgstr "Quais ferramentas WWW existem no Python?"
889+ msgstr "Quais ferramentas para WWW existem no Python?"
800890
801891#: ../../faq/library.rst:668
802892msgid ""
803893"See the chapters titled :ref:`internet` and :ref:`netdata` in the Library "
804894"Reference Manual. Python has many modules that will help you build server-"
805895"side and client-side web systems."
806896msgstr ""
897+ "Veja os capítulos intitulados :ref:`internet` e :ref:`netdata` no Manual de "
898+ "Referência da Biblioteca. Python tem muitos módulos que ajudarão você a "
899+ "construir sistemas web do lado do servidor e do lado do cliente."
807900
808901#: ../../faq/library.rst:674
809902msgid ""
@@ -848,10 +941,14 @@ msgid ""
848941"usr/sbin/sendmail``. The sendmail manual page will help you out. Here's "
849942"some sample code::"
850943msgstr ""
944+ "Uma alternativa somente para Unix usa o sendmail. A localização do programa "
945+ "sendmail varia entre os sistemas; às vezes é ``/usr/lib/sendmail``, às vezes "
946+ "``/usr/sbin/sendmail``. A página de manual do sendmail vai ajudar você. Aqui "
947+ "está um código de exemplo::"
851948
852949#: ../../faq/library.rst:732
853950msgid "How do I avoid blocking in the connect() method of a socket?"
854- msgstr "Como evito o bloqueio no método connect() de um soquete?"
951+ msgstr "Como evito um bloqueio no método connect() de um soquete?"
855952
856953#: ../../faq/library.rst:734
857954msgid ""
@@ -871,6 +968,13 @@ msgid ""
871968"return different values, so you're going to have to check what's returned on "
872969"your system."
873970msgstr ""
971+ "Para evitar que a conexão TCP bloqueie, você pode definir o soquete para o "
972+ "modo sem bloqueio. Então, quando você fizer o :meth:`~socket.socket."
973+ "connect`, você se conectará imediatamente (improvável) ou obterá uma exceção "
974+ "que contém o número de erro como ``.errno``. ``errno.EINPROGRESS`` indica "
975+ "que a conexão está em andamento, mas ainda não terminou. Diferentes sistemas "
976+ "operacionais retornarão valores diferentes, então você terá que verificar o "
977+ "que é retornado no seu sistema."
874978
875979#: ../../faq/library.rst:745
876980msgid ""
@@ -880,6 +984,11 @@ msgid ""
880984"indicate that you're connected -- or you can pass this socket to :meth:"
881985"`select.select` to check if it's writable."
882986msgstr ""
987+ "Você pode usar o método :meth:`~socket.socket.connect_ex` para evitar criar "
988+ "uma exceção. Ele retornará apenas o valor de errno. Para pesquisar, você "
989+ "pode chamar :meth:`~socket.socket.connect_ex` novamente mais tarde -- ``0`` "
990+ "ou ``errno.EISCONN`` indicam que você está conectado -- ou você pode passar "
991+ "este soquete para :meth:`select.select` para verificar se ele é gravável."
883992
884993#: ../../faq/library.rst:753
885994msgid ""
@@ -888,6 +997,10 @@ msgid ""
888997"network code. The third-party `Twisted <https://twisted.org/>`_ library is a "
889998"popular and feature-rich alternative."
890999msgstr ""
1000+ "O módulo :mod:`asyncio` fornece uma biblioteca assíncrona de thread única e "
1001+ "concorrente de propósito geral, que pode ser usada para escrever código de "
1002+ "rede não bloqueante. A biblioteca de terceiros `Twisted <https://twisted.org/"
1003+ ">`_ é uma alternativa popular e rica em recursos."
8911004
8921005#: ../../faq/library.rst:761
8931006msgid "Databases"
@@ -908,6 +1021,10 @@ msgid ""
9081021"`sqlite3` module, which provides a lightweight disk-based relational "
9091022"database."
9101023msgstr ""
1024+ "Interfaces para hashes baseados em disco, como :mod:`DBM <dbm.ndbm>` e :mod:"
1025+ "`GDBM <dbm.gnu>` também estão incluídas no Python padrão. Há também o "
1026+ "módulo :mod:`sqlite3`, que fornece um banco de dados relacional baseado em "
1027+ "disco leve."
9111028
9121029#: ../../faq/library.rst:773
9131030msgid ""
@@ -930,6 +1047,11 @@ msgid ""
9301047"mod:`shelve` library module uses pickle and (g)dbm to create persistent "
9311048"mappings containing arbitrary Python objects."
9321049msgstr ""
1050+ "O módulo de biblioteca :mod:`pickle` resolve isso de uma maneira muito geral "
1051+ "(embora você ainda não possa armazenar coisas como arquivos abertos, "
1052+ "soquetes ou janelas), e o módulo de biblioteca :mod:`shelve` usa pickle e "
1053+ "(g)dbm para criar mapeamentos persistentes contendo objetos Python "
1054+ "arbitrários."
9331055
9341056#: ../../faq/library.rst:788
9351057msgid "Mathematics and Numerics"
@@ -970,6 +1092,8 @@ msgstr ""
9701092msgid ""
9711093"``normalvariate(mean, sdev)`` samples the normal (Gaussian) distribution."
9721094msgstr ""
1095+ "``normalvariate(mean, sdev)`` gera números pseudoaleatórios que seguem uma "
1096+ "distribuição normal (Gaussiana)."
9731097
9741098#: ../../faq/library.rst:807
9751099msgid "Some higher-level functions operate on sequences directly, such as:"
@@ -979,10 +1103,13 @@ msgstr ""
9791103#: ../../faq/library.rst:809
9801104msgid "``choice(S)`` chooses a random element from a given sequence."
9811105msgstr ""
1106+ "``choice(S)`` escolhe um elemento aleatório de uma determinada sequência."
9821107
9831108#: ../../faq/library.rst:810
9841109msgid "``shuffle(L)`` shuffles a list in-place, i.e. permutes it randomly."
9851110msgstr ""
1111+ "``shuffle(L)`` embaralha uma lista internamente, ou seja permuta seus "
1112+ "elementos aleatoriamente."
9861113
9871114#: ../../faq/library.rst:812
9881115msgid ""
0 commit comments