@@ -42,6 +42,15 @@ msgid ""
4242"larger application; this technique is generally referred to as :dfn:"
4343"`embedding` Python in an application."
4444msgstr ""
45+ "A Interface de Programação de Aplicações (API) para Python fornece aos "
46+ "programadores C e C++ acesso ao interpretador Python em uma variedade de "
47+ "níveis. A API pode ser usada igualmente em C++, mas, para abreviar, "
48+ "geralmente é chamada de API Python/C. Existem dois motivos fundamentalmente "
49+ "diferentes para usar a API Python/C. A primeira razão é escrever *módulos de "
50+ "extensão* para propósitos específicos; esses são módulos C que estendem o "
51+ "interpretador Python. Este é provavelmente o uso mais comum. O segundo "
52+ "motivo é usar Python como um componente em uma aplicação maior; esta técnica "
53+ "é geralmente referida como :dfn:`incorporação` Python em uma aplicação."
4554
4655#: ../../c-api/intro.rst:20
4756msgid ""
@@ -66,6 +75,11 @@ msgid ""
6675"become familiar with writing an extension before attempting to embed Python "
6776"in a real application."
6877msgstr ""
78+ "Muitas funções da API são úteis independentemente de você estar incorporando "
79+ "ou estendendo o Python; além disso, a maioria das aplicações que incorporam "
80+ "Python também precisará fornecer uma extensão customizada, portanto, é "
81+ "provavelmente uma boa ideia se familiarizar com a escrita de uma extensão "
82+ "antes de tentar incorporar Python em uma aplicação real."
6983
7084#: ../../c-api/intro.rst:34
7185msgid "Coding standards"
@@ -79,6 +93,12 @@ msgid ""
7993"these conventions is not necessary for your own third party extension "
8094"modules, unless you eventually expect to contribute them to Python."
8195msgstr ""
96+ "Se você estiver escrevendo código C para inclusão no CPython, **deve** "
97+ "seguir as diretrizes e padrões definidos na :PEP:`7`. Essas diretrizes se "
98+ "aplicam independentemente da versão do Python com a qual você está "
99+ "contribuindo. Seguir essas convenções não é necessário para seus próprios "
100+ "módulos de extensão de terceiros, a menos que você eventualmente espere "
101+ "contribuí-los para o Python."
82102
83103#: ../../c-api/intro.rst:46
84104msgid "Include Files"
@@ -89,26 +109,36 @@ msgid ""
89109"All function, type and macro definitions needed to use the Python/C API are "
90110"included in your code by the following line::"
91111msgstr ""
112+ "Todas as definições de função, tipo e macro necessárias para usar a API "
113+ "Python/C estão incluídas em seu código pela seguinte linha::"
92114
93115#: ../../c-api/intro.rst:54
94116msgid ""
95117"This implies inclusion of the following standard headers: ``<stdio.h>``, "
96118"``<string.h>``, ``<errno.h>``, ``<limits.h>``, ``<assert.h>`` and ``<stdlib."
97119"h>`` (if available)."
98120msgstr ""
121+ "Isso implica a inclusão dos seguintes cabeçalhos padrão: ``<stdio.h>``, "
122+ "``<string.h>``, ``<errno.h>``, ``<limits.h>``, ``<assert.h>`` e ``<stdlib."
123+ "h>`` (se disponível)."
99124
100125#: ../../c-api/intro.rst:60
101126msgid ""
102127"Since Python may define some pre-processor definitions which affect the "
103128"standard headers on some systems, you *must* include :file:`Python.h` before "
104129"any standard headers are included."
105130msgstr ""
131+ "Uma vez que Python pode definir algumas definições de pré-processador que "
132+ "afetam os cabeçalhos padrão em alguns sistemas, você *deve* incluir :file:"
133+ "`Python.h` antes de quaisquer cabeçalhos padrão serem incluídos."
106134
107135#: ../../c-api/intro.rst:64
108136msgid ""
109137"It is recommended to always define ``PY_SSIZE_T_CLEAN`` before including "
110138"``Python.h``. See :ref:`arg-parsing` for a description of this macro."
111139msgstr ""
140+ "É recomendável sempre definir ``PY_SSIZE_T_CLEAN`` antes de incluir ``Python."
141+ "h``. Veja :ref:`arg-parsing` para uma descrição desta macro."
112142
113143#: ../../c-api/intro.rst:67
114144msgid ""
@@ -118,6 +148,11 @@ msgid ""
118148"implementation and should not be used by extension writers. Structure member "
119149"names do not have a reserved prefix."
120150msgstr ""
151+ "Todos os nomes visíveis ao usuário definidos por Python.h (exceto aqueles "
152+ "definidos pelos cabeçalhos padrão incluídos) têm um dos prefixos ``Py`` ou "
153+ "``_Py``. Nomes começando com ``_Py`` são para uso interno pela implementação "
154+ "Python e não devem ser usados por escritores de extensão. Os nomes dos "
155+ "membros da estrutura não têm um prefixo reservado."
121156
122157#: ../../c-api/intro.rst:74
123158msgid ""
@@ -126,6 +161,10 @@ msgid ""
126161"future Python versions, which may define additional names beginning with one "
127162"of these prefixes."
128163msgstr ""
164+ "O código do usuário nunca deve definir nomes que começam com ``Py`` ou "
165+ "``_Py``. Isso confunde o leitor e coloca em risco a portabilidade do código "
166+ "do usuário para versões futuras do Python, que podem definir nomes "
167+ "adicionais começando com um desses prefixos."
129168
130169#: ../../c-api/intro.rst:79
131170msgid ""
@@ -138,6 +177,14 @@ msgid ""
138177"`{prefix}/include`, where :envvar:`prefix` is the installation directory "
139178"specified to the installer."
140179msgstr ""
180+ "Os arquivos de cabeçalho são normalmente instalados com Python. No Unix, "
181+ "eles estão localizados nos diretórios :file:`{prefix}/include/pythonversion/"
182+ "` e :file:`{exec_prefix}/include/pythonversion/`, onde :envvar:`prefix` e :"
183+ "envvar:`exec_prefix` são definidos pelos parâmetros correspondentes ao "
184+ "script :program:`configure` e *version* do Python é ``'%d.%d' % sys."
185+ "version_info[:2]``. No Windows, os cabeçalhos são instalados em :file:"
186+ "`{prefix}/include`, onde :envvar:`prefix` é o diretório de instalação "
187+ "especificado para o instalador."
141188
142189#: ../../c-api/intro.rst:88
143190msgid ""
@@ -148,13 +195,23 @@ msgid ""
148195"envvar:`prefix` include the platform specific headers from :envvar:"
149196"`exec_prefix`."
150197msgstr ""
198+ "Para incluir os cabeçalhos, coloque os dois diretórios (se diferentes) no "
199+ "caminho de pesquisa do compilador para as inclusões. *Não* coloque os "
200+ "diretórios pais no caminho de busca e então use ``#include <pythonX.Y/Python."
201+ "h>``; isto irá quebrar em compilações multiplataforma, uma vez que os "
202+ "cabeçalhos independentes da plataforma em :envvar:`prefix` incluem os "
203+ "cabeçalhos específicos da plataforma de :envvar:`exec_prefix`."
151204
152205#: ../../c-api/intro.rst:95
153206msgid ""
154207"C++ users should note that although the API is defined entirely using C, the "
155208"header files properly declare the entry points to be ``extern \" C\" ``. As a "
156209"result, there is no need to do anything special to use the API from C++."
157210msgstr ""
211+ "Os usuários de C++ devem notar que embora a API seja definida inteiramente "
212+ "usando C, os arquivos de cabeçalho declaram apropriadamente os pontos de "
213+ "entrada como ``extern \" C\" ``. Como resultado, não há necessidade de fazer "
214+ "nada especial para usar a API do C++."
158215
159216#: ../../c-api/intro.rst:101
160217msgid "Useful macros"
@@ -167,6 +224,10 @@ msgid ""
167224"Others of a more general utility are defined here. This is not necessarily "
168225"a complete listing."
169226msgstr ""
227+ "Diversas macros úteis são definidas nos arquivos de cabeçalho do Python. "
228+ "Muitas são definidas mais próximas de onde são úteis (por exemplo, :c:macro:"
229+ "`Py_RETURN_NONE`). Outras de utilidade mais geral são definidas aqui. Esta "
230+ "não é necessariamente uma lista completa."
170231
171232#: ../../c-api/intro.rst:110
172233msgid ""
@@ -192,22 +253,29 @@ msgstr "Retorna o valor máximo entre ``x`` e ``y``."
192253msgid ""
193254"Convert ``x`` to a C string. E.g. ``Py_STRINGIFY(123)`` returns ``\" 123\" ``."
194255msgstr ""
256+ "Converte ``x`` para uma string C. Por exemplo, ``Py_STRINGIFY(123)`` retorna "
257+ "``\" 123\" ``."
195258
196259#: ../../c-api/intro.rst:144
197260msgid "Return the size of a structure (``type``) ``member`` in bytes."
198- msgstr ""
261+ msgstr "Retorna o tamanho do ``member`` de uma estrutura (``type``) em bytes. "
199262
200263#: ../../c-api/intro.rst:150
201264msgid ""
202265"Argument must be a character or an integer in the range [-128, 127] or [0, "
203266"255]. This macro returns ``c`` cast to an ``unsigned char``."
204267msgstr ""
268+ "O argumento deve ser um caractere ou um número inteiro no intervalo [-128, "
269+ "127] ou [0, 255]. Esta macro retorna ``c`` convertido em um ``unsigned "
270+ "char``."
205271
206272#: ../../c-api/intro.rst:155
207273msgid ""
208274"Like ``getenv(s)``, but returns ``NULL`` if :option:`-E` was passed on the "
209275"command line (i.e. if ``Py_IgnoreEnvironmentFlag`` is set)."
210276msgstr ""
277+ "Como ``getenv(s)``, mas retorna ``NULL`` se :option:`-E` foi passada na "
278+ "linha de comando (isto é, se ``Py_IgnoreEnvironmentFlag`` estiver definida)."
211279
212280#: ../../c-api/intro.rst:160
213281msgid ""
@@ -220,12 +288,16 @@ msgid ""
220288"Creates a variable with name ``name`` that can be used in docstrings. If "
221289"Python is built without docstrings, the value will be empty."
222290msgstr ""
291+ "Cria uma variável com o nome ``name`` que pode ser usada em docstrings. Se o "
292+ "Python for compilado sem docstrings, o valor estará vazio."
223293
224294#: ../../c-api/intro.rst:170
225295msgid ""
226296"Use :c:macro:`PyDoc_STRVAR` for docstrings to support building Python "
227297"without docstrings, as specified in :pep:`7`."
228298msgstr ""
299+ "Use :c:macro:`PyDoc_STRVAR` para docstrings para ter suporte à compilação do "
300+ "Python sem docstrings, conforme especificado em :pep:`7`."
229301
230302#: ../../c-api/intro.rst:173 ../../c-api/intro.rst:191
231303msgid "Example::"
@@ -236,12 +308,16 @@ msgid ""
236308"Creates a docstring for the given input string or an empty string if "
237309"docstrings are disabled."
238310msgstr ""
311+ "Cria uma docstring para a string de entrada fornecida ou uma string vazia se "
312+ "docstrings estiverem desabilitadas."
239313
240314#: ../../c-api/intro.rst:188
241315msgid ""
242316"Use :c:macro:`PyDoc_STR` in specifying docstrings to support building Python "
243317"without docstrings, as specified in :pep:`7`."
244318msgstr ""
319+ "Use :c:macro:`PyDoc_STR` ao especificar docstrings para ter suporte à "
320+ "compilação do Python sem docstrings, conforme especificado em :pep:`7`."
245321
246322#: ../../c-api/intro.rst:202
247323msgid "Objects, Types and Reference Counts"
@@ -272,6 +348,13 @@ msgid ""
272348"``PyList_Check(a)`` is true if (and only if) the object pointed to by *a* is "
273349"a Python list."
274350msgstr ""
351+ "Todos os objetos Python (mesmo inteiros Python) têm um :dfn:`tipo` e uma :"
352+ "dfn:`contagem de referências`. O tipo de um objeto determina que tipo de "
353+ "objeto ele é (por exemplo, um número inteiro, uma lista ou uma função "
354+ "definida pelo usuário; existem muitos mais, conforme explicado em :ref:"
355+ "`types`). Para cada um dos tipos conhecidos, há uma macro para verificar se "
356+ "um objeto é desse tipo; por exemplo, ``PyList_Check(a)`` é verdadeiro se (e "
357+ "somente se) o objeto apontado por *a* for uma lista Python."
275358
276359#: ../../c-api/intro.rst:228
277360msgid "Reference Counts"
0 commit comments