diff --git a/.github/workflows/test-translation.yml b/.github/workflows/test-translation.yml new file mode 100644 index 0000000..29cde3e --- /dev/null +++ b/.github/workflows/test-translation.yml @@ -0,0 +1,80 @@ +# python-docs-translations sample workflows, adapted to be contained in a single file +# For more information, see https://python-docs-transifex-automation.readthedocs.io/workflows.html +name: Test translation workflow + +on: + schedule: + - cron: '0 12 * * *' + push: + branches: + - '*' + workflow_dispatch: + +jobs: + lint: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + version: [ 3.13 ] + continue-on-error: true + steps: + - uses: actions/setup-python@master + with: + python-version: 3 + - run: pip install sphinx-lint + - uses: actions/checkout@master + with: + ref: ${{ matrix.version }} + - uses: rffontenelle/sphinx-lint-problem-matcher@v1.0.0 + - run: sphinx-lint + + build-translation: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + version: [ 3.13 ] + format: [ html, latex ] + steps: + - uses: actions/setup-python@master + with: + python-version: 3.12 # pinned for Sphinx 3.4.3 to build 3.10 + - uses: actions/checkout@master + with: + repository: python/cpython + ref: ${{ matrix.version }} + - run: make venv + working-directory: ./Doc + - uses: actions/checkout@master + with: + ref: ${{ matrix.version }} + path: Doc/locales/ro/LC_MESSAGES + - run: git pull + working-directory: ./Doc/locales/ro/LC_MESSAGES + - uses: sphinx-doc/github-problem-matcher@v1.1 + - run: make -e SPHINXOPTS="--color -D language='ro' -W --keep-going" ${{ matrix.format }} + working-directory: ./Doc + - uses: actions/upload-artifact@master + if: success() || failure() + with: + name: build-${{ matrix.version }}-${{ matrix.format }} + path: Doc/build/${{ matrix.format }} + + output-pdf: + runs-on: ubuntu-latest + strategy: + matrix: + version: [ 3.13 ] + needs: [ 'build-translation' ] + steps: + - uses: actions/download-artifact@master + with: + name: build-${{ matrix.version }}-latex + - run: sudo apt-get update + - run: sudo apt-get install -y latexmk texlive-xetex fonts-freefont-otf xindy + - run: make + - uses: actions/upload-artifact@master + with: + name: build-${{ matrix.version }}-pdf + path: . diff --git a/README.md b/README.md new file mode 100644 index 0000000..86fc711 --- /dev/null +++ b/README.md @@ -0,0 +1,75 @@ +# O traducere în românește a documentației limbajului Python + +Traducerea se realizează pe fragmente de text numite **mesaje**. Aceste mesaje se găsesc/introduc în fișiere [PO](https://www.gnu.org/software/gettext/manual/html\_node/PO-Files.html). + +Fișierele PO pot fi generate, dacă lucrăm sub sistemul de operare Microsoft **Windows 11**, într-un cont de **administrator**, astfel: +- instalăm cea mai recentă versiune **stabilă** de [Python](https://www.python.org/); +- instalăm generatorul de documentație [Sphinx](https://www.sphinx-doc.org/en/master/usage/installation.html): + ``` + pip install -U sphinx + ``` +- instalăm unealta [sphinx-intl](https://www.sphinx-doc.org/en/master/usage/advanced/intl.html): + ``` + pip install sphinx-intl + ``` +- descărcăm într-un director convenabil codul-sursă al celei mai recente versiuni **stabile** de Python (aceeași ca mai sus); de exemplu, [3.13.6](https://www.python.org/downloads/source/); +- în subdirectorul **Doc** al codului-sursă Python se găsește fișierul **conf.py**, la sfârșitul căruia adăugăm: + ``` + # Optiuni pentru traducerea in romaneste + # Adaugat in [ 10.08.2025 ] + + # Conform [ https://www.sphinx-doc.org/en/master/usage/advanced/intl.html ] + # ------------------------------------------------------------------------- + + locale_dirs = ['locale_python_3_13_6'] # calea are titlu de exemplu, insa este cea recomandata. + gettext_compact = False # optional. + language = 'ro' + ``` +- din subdirectorul **Doc**, deschidem un [terminal Windows](https://learn.microsoft.com/en-us/windows/terminal/) și executăm comanda: + ``` + ./make gettext + ``` + Ea va genera subdirectorul **build/gettext** al directorului **Doc**, care conține fișiere [POT](https://www.drupal.org/community/contributor-guide/reference-information/localize-drupal-org/working-with-offline/po-and-pot-files). +- în același terminal, comanda: + ``` + sphinx-intl update -p build/gettext -l ro + ``` + va produce subdirectorul **locale_python_3_13_6/ro/LC_MESSAGES** al directorului **Doc**. Acesta conține fișierele PO căutate. + +Putem genera codul HTML al documentației folosind scriptul **scripturi/compilarea_traducerii.ps1** din acest proiect. Astfel, într-un terminal Windows cu **drepturi de administrator** (tastele Win + X, A), deschis din directorul unde se găsește scriptul PowerShell, executăm comenzile: +``` +Set-ExecutionPolicy Unrestricted +./compilarea_traducerii +``` +## Abateri de la recomandările oficiale privind traducerea + +Am optat, în versiunea de față a traducerii, pentru *variante românești* ale majorității numelor de variabile, de funcții, de clase, de argumente care intervin în exemplele de cod. Aceasta constituie o abatere de la [recomandarea oficială](https://devguide.python.org/documentation/translations/translating/#code-examples). Ea este justificată, în opinia mea, de ușurința cu care anumite idiomuri ale sintaxei Python-ului pot fi sesizate de către un nou-venit atunci când acesta se lansează în cititul unor fragmente aleatoare de cod. + +Pentru a compila *abaterile*, am operat mici modificări în fișierele **.rst** corespunzătoare. + +## Compilarea tutorialului + +Tutorialul de Python, în românește, poate fi citit [aici](https://www.octawian.ro/fisiere/tutoriale/python/build/tutorial/). El trebuie considerat *șantier* (fuzzy) de către eventualii săi cititori. + +## Acord asupra contribuției aduse la documentație + +NOTĂ PRIVIND LICENȚA TRADUCERILOR: documentația Python este întreținută de o rețea globală de voluntari. Prin publicarea acestui proiect pe Transifex, GitHub sau în alt loc public și prin invitația adresată dumneavoastră de a participa la el vă propunem un acord în baza căruia dumneavoastră vă veți oferi îmbunătățirile aduse documentației Python sau traducerii acesteia spre folosință de către PSF sub licența CC0 (disponibilă la adresa https://creativecommons.org/publicdomain/zero/1.0/legalcode). În schimb, veți putea pretinde recunoaștere asupra porțiunii din traducere la care ați contribuit și, dacă traducerea dumneavoastră este acceptată de către PSF, veți putea (fără a fi obligat la aceasta) să transmiteți o corecție cuprinzând adnotarea potrivită a fișierului Misc/ACKS sau TRANSLATORS. Deși nimic din acest acord asupra contribuției aduse la documentație nu obligă PSF să încorporeze textul contribuției dumneavoastră, participarea dumneavoastră la comunitatea Python este binevenită și apreciată. + +Consfințiți acceptarea acestui acord prin transmiterea muncii dumneavoastră către PSF pentru a fi inclusă în documentație. + + + + + + + + + + + + + + + + + diff --git a/README.rst b/README.rst deleted file mode 100644 index 24fe8b1..0000000 --- a/README.rst +++ /dev/null @@ -1,112 +0,0 @@ -O traducere în românește a documentației limbajului Python -========================================================== - -Traducerea se realizează pe fragmente de text numite **mesaje**. -Aceste mesaje se găsesc/introduc în fișiere -`PO `_. - -Fișierele PO pot fi generate, dacă lucrăm sub sistemul de -operare Microsoft **Windows 11**, într-un cont de **administrator**, -astfel: - -- instalăm cea mai recentă versiune **stabilă** de - `Python `_; -- instalăm generatorul de documentație - `Sphinx `_:: - - pip install -U sphinx - -- instalăm unealta - `sphinx-intl `_:: - - pip install sphinx-intl - -- descărcăm într-un director convenabil codul-sursă al celei mai recente - versiuni **stabile** de Python (aceeași ca mai sus); de exemplu, - `3.13.5 `_; -- în subdirectorul **Doc** al codului-sursă Python se găsește fișierul - **conf.py**, la sfârșitul căruia adăugăm:: - - # Optiuni pentru traducerea in romaneste - # Adaugat in [ 17.06.2025 ] - # Conform [ https://www.sphinx-doc.org/en/master/usage/advanced/intl.html ] - # ------------------------------------------------------------------------- - - locale_dirs = ['locale_python_3_13_5/'] # path is example but recommended. - gettext_compact = False # optional. - language = 'ro' - -- din subdirectorul **Doc**, deschidem un - `terminal Windows `_ - și executăm comanda:: - - ./make gettext - - Ea va genera subdirectorul **build/gettext** al directorului **Doc**, - care conține fișiere - `POT `_. - -- în același terminal, comanda:: - - sphinx-intl update -p build/gettext -l ro - - va produce subdirectorul **locale_python_3_13_5/ro/LC_MESSAGES** al directorului - **Doc**. Acesta conține fișierele PO căutate. - -Putem genera codul HTML al documentației folosind scriptul -**scripturi/compilarea_traducerii.ps1** din acest proiect. Astfel, -într-un terminal Windows cu **drepturi de administrator** -(tastele Win + X, A), deschis din directorul unde se găsește -scriptul PowerShell, executăm comenzile:: - - Set-ExecutionPolicy Unrestricted - ./compilarea_traducerii - -Abateri de la recomandările oficiale privind traducerea -------------------------------------------------------- -Am optat, în versiunea de față a traducerii, pentru *variante românești* -ale majorității numelor de variabile, de funcții, de clase, de argumente -care intervin în exemplele de cod. -Aceasta constituie o abatere de la -`recomandarea oficială `_. -Ea este justificată, în opinia mea, de ușurința cu care anumite idiomuri -ale sintaxei Python-ului pot fi sesizate de către un nou-venit atunci când -acesta se lansează în cititul unor fragmente aleatoare de cod. - -Pentru a compila *abaterile*, am operat mici modificări în fișierele -**.rst** corespunzătoare. - -Compilarea tutorialului ------------------------ -Tutorialul de Python, în românește, poate fi citit -`aici `_. -El trebuie considerat *șantier* (fuzzy) de către -eventualii săi cititori. - -Acord asupra contribuției aduse la documentație ------------------------------------------------ - -NOTĂ PRIVIND LICENȚA TRADUCERILOR: documentația Python -este întreținută de o rețea globală de voluntari. Prin -publicarea acestui proiect pe Transifex, GitHub sau în -alt loc public și prin invitația adresată dumneavoastră -de a participa la el vă propunem un acord în baza căruia -dumneavoastră vă veți oferi îmbunătățirile aduse -documentației Python sau traducerii acesteia spre -folosință de către PSF sub licența CC0 (disponibilă la -adresa -https://creativecommons.org/publicdomain/zero/1.0/legalcode). -În schimb, veți putea pretinde recunoaștere asupra -porțiunii din traducere la care ați contribuit și, dacă -traducerea dumneavoastră este acceptată de către PSF, veți -putea (fără a fi obligat la aceasta) să transmiteți o -corecție cuprinzând adnotarea potrivită a fișierului -Misc/ACKS sau TRANSLATORS. Deși nimic din acest acord -asupra contribuției aduse la documentație nu obligă -PSF să încorporeze textul contribuției dumneavoastră, -participarea dumneavoastră la comunitatea Python este -binevenită și apreciată. - -Consfințiți acceptarea acestui acord prin transmiterea -muncii dumneavoastră către PSF pentru a fi inclusă în -documentație. diff --git a/bugs.po b/bugs.po index 6cc97ce..849d8c0 100644 --- a/bugs.po +++ b/bugs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.13\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-04 13:08+0200\n" +"POT-Creation-Date: 2025-06-17 17:56+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: ro\n" @@ -56,7 +56,7 @@ msgid "" "tracker>`. If you have a suggestion on how to fix it, include that as " "well." msgstr "" -"Dacă găsiți o eroare în această documentație și doriți să propuneți o " +"Dacă găsiți o eroare în această documentație și/sau doriți să propuneți o " "îmbunătățire, vă rugăm să transmiteți un raport de eroare la " ":ref:`urmăritor `. Dacă aveți o sugestie despre cum " "să o rezolvăm, includeți-o în raport." @@ -90,7 +90,7 @@ msgstr "" "Dacă nu aveți mai mult timp la dispoziție, puteți trimite rapoartele de " "eroare privind documentația și la docs@python.org (erorile de funcționare " "pot fi trimise la python-list@python.org). 'docs@' este o listă de " -"corespondență îngrijită de voluntari; cererea dumneavoastră va fi " +"discuții îngrijită de voluntari; cererea dumneavoastră va fi " "remarcată de îndată, însă procesarea ei vă necesita un anume timp." #: ../../bugs.rst:36 @@ -140,7 +140,6 @@ msgid "" "`Documentation Translations " "`_" msgstr "" -"" "`Traduceri ale documentației " "`_" @@ -197,7 +196,7 @@ msgid "" "using the \"Sign up\" link. It is not possible to submit a bug report " "anonymously." msgstr "" -"Dacă problema pe care o raportați nu se găsește deja în listă, logați-vă " +"Dacă problema pe care o raportați nu se găsește încă în listă, logați-vă " "la GitHub. Dacă nu aveți deja un cont GitHub, creați-vă un cont nou " "folosind linkul \"Sign up\". Nu este posibil să trimiteți un raport de " "eroare ca anonim." @@ -220,8 +219,8 @@ msgid "" "For the \"Title\" field, enter a *very* short description of the problem;" " fewer than ten words is good." msgstr "" -"La câmpul \"Title\", introduceți o *foarte* scurtă descriere a problemei;" -" este bine ca ea să fie de sub zece cuvinte." +"La câmpul \"Title\" (\"Titlul\"), introduceți o *foarte* scurtă descriere " +"a problemei; este bine ca ea să fie de sub zece cuvinte." #: ../../bugs.rst:79 msgid "" @@ -230,11 +229,11 @@ msgid "" "any extension modules were involved, and what hardware and software " "platform you were using (including version information as appropriate)." msgstr "" -"La câmpul \"Comment\", descrieți problema în detaliu, incluzând ceea ce " -"v-ați fi așteptat să se întâmple și ceea ce s-a întâmplat. Asigurați-vă " -"că ați precizat dacă au fost folosite module de extindere, precum și ce " -"platformă hardware și software ați folosit (incluzând, dacă este cazul, " -"informații despre versiuni)." +"La câmpul \"Comment\" (\"Comentariu\"), descrieți problema în detaliu, " +"incluzând ceea ce v-ați fi așteptat să se întâmple și ceea ce s-a " +"întâmplat. Asigurați-vă că ați precizat dacă au fost folosite module de " +"extindere, precum și ce platformă hardware și software ați folosit " +"(incluzând, dacă este cazul, informații despre versiuni)." #: ../../bugs.rst:84 msgid "" @@ -303,6 +302,3 @@ msgstr "" "`core-mentorship mailing list`_ este un loc propice pentru aflarea " "răspunsurilor la orice fel de întrebare privitoare la procesul " "reparării erorilor din Python." - - - diff --git a/glossary.po b/glossary.po index 08f53c4..43a72d6 100644 --- a/glossary.po +++ b/glossary.po @@ -1,18 +1,18 @@ -# SOME DESCRIPTIVE TITLE. +# GLOSAR. # Copyright (C) 2001-2025, Python Software Foundation # This file is distributed under the same license as the Python package. -# FIRST AUTHOR , 2025. +# Octavian Mustafa , 2025. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.13\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-05-09 18:20+0300\n" +"POT-Creation-Date: 2025-08-10 10:39+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: ro\n" -"Language-Team: ro \n" +"Language-Team: ro \n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100" " < 20)) ? 1 : 2);\n" "MIME-Version: 1.0\n" @@ -22,11 +22,11 @@ msgstr "" #: ../../glossary.rst:5 msgid "Glossary" -msgstr "" +msgstr "Glosar" #: ../../glossary.rst:10 msgid "``>>>``" -msgstr "" +msgstr "``>>>``" #: ../../glossary.rst:12 msgid "" @@ -36,7 +36,7 @@ msgstr "" #: ../../glossary.rst:15 msgid "``...``" -msgstr "" +msgstr "``...``" #: ../../glossary.rst:17 msgid "Can refer to:" @@ -56,7 +56,7 @@ msgstr "" #: ../../glossary.rst:25 msgid "abstract base class" -msgstr "" +msgstr "clasă de bază abstractă" #: ../../glossary.rst:27 msgid "" @@ -75,7 +75,7 @@ msgstr "" #: ../../glossary.rst:38 msgid "annotation" -msgstr "" +msgstr "adnotare" #: ../../glossary.rst:40 msgid "" @@ -100,7 +100,7 @@ msgstr "" #: ../../glossary.rst:54 msgid "argument" -msgstr "" +msgstr "argument" #: ../../glossary.rst:56 msgid "" @@ -155,7 +155,7 @@ msgstr "" #: ../../glossary.rst:84 msgid "asynchronous context manager" -msgstr "" +msgstr "gestionar de context asincron" #: ../../glossary.rst:86 msgid "" @@ -166,7 +166,7 @@ msgstr "" #: ../../glossary.rst:89 msgid "asynchronous generator" -msgstr "" +msgstr "generator asincron" #: ../../glossary.rst:91 msgid "" @@ -192,7 +192,7 @@ msgstr "" #: ../../glossary.rst:103 msgid "asynchronous generator iterator" -msgstr "" +msgstr "iterator al unui generator asincron" #: ../../glossary.rst:105 msgid "An object created by a :term:`asynchronous generator` function." @@ -217,7 +217,7 @@ msgstr "" #: ../../glossary.rst:117 msgid "asynchronous iterable" -msgstr "" +msgstr "iterabil asincron" #: ../../glossary.rst:119 msgid "" @@ -228,7 +228,7 @@ msgstr "" #: ../../glossary.rst:122 msgid "asynchronous iterator" -msgstr "" +msgstr "iterator asincron" #: ../../glossary.rst:124 msgid "" @@ -242,7 +242,7 @@ msgstr "" #: ../../glossary.rst:129 msgid "attribute" -msgstr "" +msgstr "atribut" #: ../../glossary.rst:131 msgid "" @@ -262,7 +262,7 @@ msgstr "" #: ../../glossary.rst:141 msgid "awaitable" -msgstr "" +msgstr "de așteptat" #: ../../glossary.rst:143 msgid "" @@ -273,17 +273,19 @@ msgstr "" #: ../../glossary.rst:146 msgid "BDFL" -msgstr "" +msgstr "BDFL (BDPV)" #: ../../glossary.rst:148 msgid "" "Benevolent Dictator For Life, a.k.a. `Guido van Rossum " "`_, Python's creator." msgstr "" +"Binevoitorul Dictator Pe Viață, adică `Guido van Rossum " +"`_, creatorul Python-ului." #: ../../glossary.rst:150 msgid "binary file" -msgstr "" +msgstr "fișier binar" #: ../../glossary.rst:152 msgid "" @@ -302,7 +304,7 @@ msgstr "" #: ../../glossary.rst:161 msgid "borrowed reference" -msgstr "" +msgstr "referință împrumutată" #: ../../glossary.rst:163 msgid "" @@ -324,7 +326,7 @@ msgstr "" #: ../../glossary.rst:174 msgid "bytes-like object" -msgstr "" +msgstr "obiect ca-din-octeți" #: ../../glossary.rst:176 msgid "" @@ -349,7 +351,7 @@ msgstr "" #: ../../glossary.rst:191 msgid "bytecode" -msgstr "" +msgstr "cod de octeți" #: ../../glossary.rst:193 msgid "" @@ -371,7 +373,7 @@ msgstr "" #: ../../glossary.rst:205 msgid "callable" -msgstr "" +msgstr "apelabil" #: ../../glossary.rst:207 msgid "" @@ -392,7 +394,7 @@ msgstr "" #: ../../glossary.rst:215 msgid "callback" -msgstr "" +msgstr "apel de răspuns" #: ../../glossary.rst:217 msgid "" @@ -402,7 +404,7 @@ msgstr "" #: ../../glossary.rst:219 msgid "class" -msgstr "" +msgstr "clasă" #: ../../glossary.rst:221 msgid "" @@ -412,7 +414,7 @@ msgstr "" #: ../../glossary.rst:224 msgid "class variable" -msgstr "" +msgstr "variabilă de clasă" #: ../../glossary.rst:226 msgid "" @@ -422,7 +424,7 @@ msgstr "" #: ../../glossary.rst:228 msgid "closure variable" -msgstr "" +msgstr "variabilă din închidere" #: ../../glossary.rst:230 msgid "" @@ -462,7 +464,7 @@ msgstr "" #: ../../glossary.rst:250 msgid "complex number" -msgstr "" +msgstr "număr complex" #: ../../glossary.rst:252 msgid "" @@ -480,7 +482,7 @@ msgstr "" #: ../../glossary.rst:262 msgid "context" -msgstr "" +msgstr "context" #: ../../glossary.rst:264 msgid "" @@ -508,7 +510,7 @@ msgstr "" #: ../../glossary.rst:275 msgid "context management protocol" -msgstr "" +msgstr "protocol de gestionare contextuală" #: ../../glossary.rst:277 msgid "" @@ -518,7 +520,7 @@ msgstr "" #: ../../glossary.rst:279 msgid "context manager" -msgstr "" +msgstr "gestionar de context" #: ../../glossary.rst:281 msgid "" @@ -529,7 +531,7 @@ msgstr "" #: ../../glossary.rst:284 msgid "context variable" -msgstr "" +msgstr "variabilă contextuală" #: ../../glossary.rst:286 msgid "" @@ -541,7 +543,7 @@ msgstr "" #: ../../glossary.rst:290 msgid "contiguous" -msgstr "" +msgstr "contiguu" #: ../../glossary.rst:294 msgid "" @@ -553,10 +555,18 @@ msgid "" " fastest when visiting items in order of memory address. However, in " "Fortran contiguous arrays, the first index varies the fastest." msgstr "" +"A buffer is considered contiguous exactly if it is either " +"*contiguu ca în C* sau " +"*contiguu ca în Fortran*. Zero-dimensional buffers are C and Fortran " +"contiguous. In one-dimensional arrays, the items must be laid out in " +"memory next to each other, in order of increasing indexes starting from " +"zero. In multidimensional C-contiguous arrays, the last index varies the" +" fastest when visiting items in order of memory address. However, in " +"Fortran contiguous arrays, the first index varies the fastest." #: ../../glossary.rst:302 msgid "coroutine" -msgstr "" +msgstr "corutină" #: ../../glossary.rst:304 msgid "" @@ -569,7 +579,7 @@ msgstr "" #: ../../glossary.rst:309 msgid "coroutine function" -msgstr "" +msgstr "funcție corutină" #: ../../glossary.rst:311 msgid "" @@ -581,7 +591,7 @@ msgstr "" #: ../../glossary.rst:316 msgid "CPython" -msgstr "" +msgstr "CPython" #: ../../glossary.rst:318 msgid "" @@ -593,7 +603,7 @@ msgstr "" #: ../../glossary.rst:322 msgid "current context" -msgstr "" +msgstr "context curent" #: ../../glossary.rst:324 msgid "" @@ -608,7 +618,7 @@ msgstr "" #: ../../glossary.rst:330 msgid "decorator" -msgstr "" +msgstr "decorator" #: ../../glossary.rst:332 msgid "" @@ -643,7 +653,7 @@ msgstr "" #: ../../glossary.rst:350 msgid "descriptor" -msgstr "" +msgstr "descriptor" #: ../../glossary.rst:352 msgid "" @@ -667,7 +677,7 @@ msgstr "" #: ../../glossary.rst:365 msgid "dictionary" -msgstr "" +msgstr "dicționar" #: ../../glossary.rst:367 msgid "" @@ -678,7 +688,7 @@ msgstr "" #: ../../glossary.rst:371 msgid "dictionary comprehension" -msgstr "" +msgstr "comprehensiune sub formă de dicționar" #: ../../glossary.rst:373 #, python-brace-format @@ -691,7 +701,7 @@ msgstr "" #: ../../glossary.rst:377 msgid "dictionary view" -msgstr "" +msgstr "vedere de dicționar" #: ../../glossary.rst:379 msgid "" @@ -704,7 +714,7 @@ msgstr "" #: ../../glossary.rst:385 msgid "docstring" -msgstr "" +msgstr "șir de documentație" #: ../../glossary.rst:387 msgid "" @@ -718,7 +728,7 @@ msgstr "" #: ../../glossary.rst:393 msgid "duck-typing" -msgstr "" +msgstr "tipizare în funcție de comportament" #: ../../glossary.rst:395 msgid "" @@ -734,11 +744,22 @@ msgid "" msgstr "" #: ../../glossary.rst:404 -msgid "EAFP" -msgstr "" +msgid "dunder" +msgstr "dunder (două-jos)" #: ../../glossary.rst:406 msgid "" +"An informal short-hand for \"double underscore\", used when talking about" +" a :term:`special method`. For example, ``__init__`` is often pronounced " +"\"dunder init\"." +msgstr "" + +#: ../../glossary.rst:409 +msgid "EAFP" +msgstr "EAFP (DCIV)" + +#: ../../glossary.rst:411 +msgid "" "Easier to ask for forgiveness than permission. This common Python coding" " style assumes the existence of valid keys or attributes and catches " "exceptions if the assumption proves false. This clean and fast style is " @@ -746,12 +767,18 @@ msgid "" ":keyword:`except` statements. The technique contrasts with the " ":term:`LBYL` style common to many other languages such as C." msgstr "" +"Mai degrabă ceri iertare decât voie. This common Python coding" +" style assumes the existence of valid keys or attributes and catches " +"exceptions if the assumption proves false. This clean and fast style is " +"characterized by the presence of many :keyword:`try` and " +":keyword:`except` statements. The technique contrasts with the " +":term:`LBYL` style common to many other languages such as C." -#: ../../glossary.rst:412 +#: ../../glossary.rst:417 msgid "expression" -msgstr "" +msgstr "expresie" -#: ../../glossary.rst:414 +#: ../../glossary.rst:419 msgid "" "A piece of syntax which can be evaluated to some value. In other words, " "an expression is an accumulation of expression elements like literals, " @@ -762,32 +789,32 @@ msgid "" "statements, not expressions." msgstr "" -#: ../../glossary.rst:421 +#: ../../glossary.rst:426 msgid "extension module" -msgstr "" +msgstr "modul de extensie" -#: ../../glossary.rst:423 +#: ../../glossary.rst:428 msgid "" "A module written in C or C++, using Python's C API to interact with the " "core and with user code." msgstr "" -#: ../../glossary.rst:425 +#: ../../glossary.rst:430 msgid "f-string" -msgstr "" +msgstr "șir F de caractere" -#: ../../glossary.rst:427 +#: ../../glossary.rst:432 msgid "" "String literals prefixed with ``'f'`` or ``'F'`` are commonly called " "\"f-strings\" which is short for :ref:`formatted string literals " "`. See also :pep:`498`." msgstr "" -#: ../../glossary.rst:430 +#: ../../glossary.rst:435 msgid "file object" -msgstr "" +msgstr "obiect fișier" -#: ../../glossary.rst:432 +#: ../../glossary.rst:437 msgid "" "An object exposing a file-oriented API (with methods such as " ":meth:`!read` or :meth:`!write`) to an underlying resource. Depending on" @@ -798,7 +825,7 @@ msgid "" ":dfn:`streams`." msgstr "" -#: ../../glossary.rst:440 +#: ../../glossary.rst:445 msgid "" "There are actually three categories of file objects: raw :term:`binary " "files `, buffered :term:`binary files ` and " @@ -807,39 +834,39 @@ msgid "" "the :func:`open` function." msgstr "" -#: ../../glossary.rst:445 +#: ../../glossary.rst:450 msgid "file-like object" -msgstr "" +msgstr "obiect ca-un-fișier" -#: ../../glossary.rst:447 +#: ../../glossary.rst:452 msgid "A synonym for :term:`file object`." msgstr "" -#: ../../glossary.rst:448 +#: ../../glossary.rst:453 msgid "filesystem encoding and error handler" -msgstr "" +msgstr "rutină de tratare a erorilor și a codificării sistemului de fișiere" -#: ../../glossary.rst:450 +#: ../../glossary.rst:455 msgid "" "Encoding and error handler used by Python to decode bytes from the " "operating system and encode Unicode to the operating system." msgstr "" -#: ../../glossary.rst:453 +#: ../../glossary.rst:458 msgid "" "The filesystem encoding must guarantee to successfully decode all bytes " "below 128. If the file system encoding fails to provide this guarantee, " "API functions can raise :exc:`UnicodeError`." msgstr "" -#: ../../glossary.rst:457 +#: ../../glossary.rst:462 msgid "" "The :func:`sys.getfilesystemencoding` and " ":func:`sys.getfilesystemencodeerrors` functions can be used to get the " "filesystem encoding and error handler." msgstr "" -#: ../../glossary.rst:461 +#: ../../glossary.rst:466 msgid "" "The :term:`filesystem encoding and error handler` are configured at " "Python startup by the :c:func:`PyConfig_Read` function: see " @@ -847,36 +874,36 @@ msgid "" ":c:member:`~PyConfig.filesystem_errors` members of :c:type:`PyConfig`." msgstr "" -#: ../../glossary.rst:466 +#: ../../glossary.rst:471 msgid "See also the :term:`locale encoding`." msgstr "" -#: ../../glossary.rst:467 +#: ../../glossary.rst:472 msgid "finder" -msgstr "" +msgstr "descoperitor" -#: ../../glossary.rst:469 +#: ../../glossary.rst:474 msgid "" "An object that tries to find the :term:`loader` for a module that is " "being imported." msgstr "" -#: ../../glossary.rst:472 +#: ../../glossary.rst:477 msgid "" "There are two types of finder: :term:`meta path finders ` for use with :data:`sys.meta_path`, and :term:`path entry " "finders ` for use with :data:`sys.path_hooks`." msgstr "" -#: ../../glossary.rst:476 +#: ../../glossary.rst:481 msgid "See :ref:`finders-and-loaders` and :mod:`importlib` for much more detail." msgstr "" -#: ../../glossary.rst:477 +#: ../../glossary.rst:482 msgid "floor division" -msgstr "" +msgstr "parte întreagă la împărțirea cu rest" -#: ../../glossary.rst:479 +#: ../../glossary.rst:484 msgid "" "Mathematical division that rounds down to nearest integer. The floor " "division operator is ``//``. For example, the expression ``11 // 4`` " @@ -885,11 +912,11 @@ msgid "" "rounded *downward*. See :pep:`238`." msgstr "" -#: ../../glossary.rst:484 +#: ../../glossary.rst:489 msgid "free threading" -msgstr "" +msgstr "execuție multifilară asincronă" -#: ../../glossary.rst:486 +#: ../../glossary.rst:491 msgid "" "A threading model where multiple threads can run Python bytecode " "simultaneously within the same interpreter. This is in contrast to the " @@ -897,11 +924,11 @@ msgid "" "Python bytecode at a time. See :pep:`703`." msgstr "" -#: ../../glossary.rst:490 +#: ../../glossary.rst:495 msgid "free variable" -msgstr "" +msgstr "variabilă liberă" -#: ../../glossary.rst:492 +#: ../../glossary.rst:497 msgid "" "Formally, as defined in the :ref:`language execution model `," " a free variable is any variable used in a namespace which is not a local" @@ -911,11 +938,11 @@ msgid "" ":term:`closure variable`." msgstr "" -#: ../../glossary.rst:497 +#: ../../glossary.rst:502 msgid "function" -msgstr "" +msgstr "funcție" -#: ../../glossary.rst:499 +#: ../../glossary.rst:504 msgid "" "A series of statements which returns some value to a caller. It can also " "be passed zero or more :term:`arguments ` which may be used in " @@ -923,43 +950,43 @@ msgid "" "and the :ref:`function` section." msgstr "" -#: ../../glossary.rst:503 +#: ../../glossary.rst:508 msgid "function annotation" -msgstr "" +msgstr "adnotare de funcție" -#: ../../glossary.rst:505 +#: ../../glossary.rst:510 msgid "An :term:`annotation` of a function parameter or return value." msgstr "" -#: ../../glossary.rst:507 +#: ../../glossary.rst:512 msgid "" "Function annotations are usually used for :term:`type hints `:" " for example, this function is expected to take two :class:`int` " "arguments and is also expected to have an :class:`int` return value::" msgstr "" -#: ../../glossary.rst:512 +#: ../../glossary.rst:517 msgid "" "def sum_two_numbers(a: int, b: int) -> int:\n" " return a + b" msgstr "" -#: ../../glossary.rst:515 +#: ../../glossary.rst:520 msgid "Function annotation syntax is explained in section :ref:`function`." msgstr "" -#: ../../glossary.rst:517 +#: ../../glossary.rst:522 msgid "" "See :term:`variable annotation` and :pep:`484`, which describe this " "functionality. Also see :ref:`annotations-howto` for best practices on " "working with annotations." msgstr "" -#: ../../glossary.rst:521 +#: ../../glossary.rst:526 msgid "__future__" -msgstr "" +msgstr "__future__" -#: ../../glossary.rst:523 +#: ../../glossary.rst:528 msgid "" "A :ref:`future statement `, ``from __future__ import ``," " directs the compiler to compile the current module using syntax or " @@ -970,18 +997,18 @@ msgid "" "become the default::" msgstr "" -#: ../../glossary.rst:531 +#: ../../glossary.rst:536 msgid "" ">>> import __future__\n" ">>> __future__.division\n" "_Feature((2, 2, 0, 'alpha', 2), (3, 0, 0, 'alpha', 0), 8192)" msgstr "" -#: ../../glossary.rst:534 +#: ../../glossary.rst:539 msgid "garbage collection" -msgstr "" +msgstr "colectare a gunoiului" -#: ../../glossary.rst:536 +#: ../../glossary.rst:541 msgid "" "The process of freeing memory when it is not used anymore. Python " "performs garbage collection via reference counting and a cyclic garbage " @@ -989,11 +1016,11 @@ msgid "" " collector can be controlled using the :mod:`gc` module." msgstr "" -#: ../../glossary.rst:541 ../../glossary.rst:542 +#: ../../glossary.rst:546 ../../glossary.rst:547 msgid "generator" -msgstr "" +msgstr "generator" -#: ../../glossary.rst:544 +#: ../../glossary.rst:549 msgid "" "A function which returns a :term:`generator iterator`. It looks like a " "normal function except that it contains :keyword:`yield` expressions for " @@ -1001,22 +1028,22 @@ msgid "" "retrieved one at a time with the :func:`next` function." msgstr "" -#: ../../glossary.rst:549 +#: ../../glossary.rst:554 msgid "" "Usually refers to a generator function, but may refer to a *generator " "iterator* in some contexts. In cases where the intended meaning isn't " "clear, using the full terms avoids ambiguity." msgstr "" -#: ../../glossary.rst:552 +#: ../../glossary.rst:557 msgid "generator iterator" -msgstr "" +msgstr "iterator de generator" -#: ../../glossary.rst:554 +#: ../../glossary.rst:559 msgid "An object created by a :term:`generator` function." msgstr "" -#: ../../glossary.rst:556 +#: ../../glossary.rst:561 msgid "" "Each :keyword:`yield` temporarily suspends processing, remembering the " "execution state (including local variables and pending try-statements). " @@ -1024,11 +1051,11 @@ msgid "" "contrast to functions which start fresh on every invocation)." msgstr "" -#: ../../glossary.rst:562 ../../glossary.rst:563 +#: ../../glossary.rst:567 ../../glossary.rst:568 msgid "generator expression" -msgstr "" +msgstr "expresie generatoare" -#: ../../glossary.rst:565 +#: ../../glossary.rst:570 msgid "" "An :term:`expression` that returns an :term:`iterator`. It looks like a " "normal expression followed by a :keyword:`!for` clause defining a loop " @@ -1036,59 +1063,59 @@ msgid "" "expression generates values for an enclosing function::" msgstr "" -#: ../../glossary.rst:570 +#: ../../glossary.rst:575 msgid "" ">>> sum(i*i for i in range(10)) # sum of squares 0, 1, 4, ... 81\n" "285" msgstr "" -#: ../../glossary.rst:572 +#: ../../glossary.rst:577 msgid "generic function" -msgstr "" +msgstr "funcție generică" -#: ../../glossary.rst:574 +#: ../../glossary.rst:579 msgid "" "A function composed of multiple functions implementing the same operation" " for different types. Which implementation should be used during a call " "is determined by the dispatch algorithm." msgstr "" -#: ../../glossary.rst:578 +#: ../../glossary.rst:583 msgid "" "See also the :term:`single dispatch` glossary entry, the " ":func:`functools.singledispatch` decorator, and :pep:`443`." msgstr "" -#: ../../glossary.rst:580 +#: ../../glossary.rst:585 msgid "generic type" -msgstr "" +msgstr "tip generic" -#: ../../glossary.rst:582 +#: ../../glossary.rst:587 msgid "" "A :term:`type` that can be parameterized; typically a :ref:`container " "class` such as :class:`list` or :class:`dict`. Used for " ":term:`type hints ` and :term:`annotations `." msgstr "" -#: ../../glossary.rst:587 +#: ../../glossary.rst:592 msgid "" "For more details, see :ref:`generic alias types`, " ":pep:`483`, :pep:`484`, :pep:`585`, and the :mod:`typing` module." msgstr "" -#: ../../glossary.rst:589 +#: ../../glossary.rst:594 msgid "GIL" -msgstr "" +msgstr "GIL (BGI)" -#: ../../glossary.rst:591 +#: ../../glossary.rst:596 msgid "See :term:`global interpreter lock`." msgstr "" -#: ../../glossary.rst:592 +#: ../../glossary.rst:597 msgid "global interpreter lock" -msgstr "" +msgstr "blocare globală de interpretor" -#: ../../glossary.rst:594 +#: ../../glossary.rst:599 msgid "" "The mechanism used by the :term:`CPython` interpreter to assure that only" " one thread executes Python :term:`bytecode` at a time. This simplifies " @@ -1099,7 +1126,7 @@ msgid "" "parallelism afforded by multi-processor machines." msgstr "" -#: ../../glossary.rst:603 +#: ../../glossary.rst:608 msgid "" "However, some extension modules, either standard or third-party, are " "designed so as to release the GIL when doing computationally intensive " @@ -1107,7 +1134,7 @@ msgid "" "when doing I/O." msgstr "" -#: ../../glossary.rst:608 +#: ../../glossary.rst:613 msgid "" "As of Python 3.13, the GIL can be disabled using the :option:`--disable-" "gil` build configuration. After building Python with this option, code " @@ -1118,22 +1145,22 @@ msgid "" ":pep:`703`." msgstr "" -#: ../../glossary.rst:614 +#: ../../glossary.rst:619 msgid "hash-based pyc" -msgstr "" +msgstr "pyc bazat pe hash" -#: ../../glossary.rst:616 +#: ../../glossary.rst:621 msgid "" "A bytecode cache file that uses the hash rather than the last-modified " "time of the corresponding source file to determine its validity. See :ref" ":`pyc-invalidation`." msgstr "" -#: ../../glossary.rst:619 +#: ../../glossary.rst:624 msgid "hashable" -msgstr "" +msgstr "identificabil prin hash" -#: ../../glossary.rst:621 +#: ../../glossary.rst:626 msgid "" "An object is *hashable* if it has a hash value which never changes during" " its lifetime (it needs a :meth:`~object.__hash__` method), and can be " @@ -1141,13 +1168,13 @@ msgid "" "Hashable objects which compare equal must have the same hash value." msgstr "" -#: ../../glossary.rst:627 +#: ../../glossary.rst:632 msgid "" "Hashability makes an object usable as a dictionary key and a set member, " "because these data structures use the hash value internally." msgstr "" -#: ../../glossary.rst:630 +#: ../../glossary.rst:635 msgid "" "Most of Python's immutable built-in objects are hashable; mutable " "containers (such as lists or dictionaries) are not; immutable containers " @@ -1157,39 +1184,42 @@ msgid "" "and their hash value is derived from their :func:`id`." msgstr "" -#: ../../glossary.rst:637 +#: ../../glossary.rst:642 msgid "IDLE" -msgstr "" +msgstr "IDLE (MIDI)" -#: ../../glossary.rst:639 +#: ../../glossary.rst:644 msgid "" "An Integrated Development and Learning Environment for Python. " ":ref:`idle` is a basic editor and interpreter environment which ships " "with the standard distribution of Python." msgstr "" +"Un Mediu de Învățare și Dezvoltare Integrată în Python. " +":ref:`idle` is a basic editor and interpreter environment which ships " +"with the standard distribution of Python." -#: ../../glossary.rst:642 +#: ../../glossary.rst:647 msgid "immortal" -msgstr "" +msgstr "imortal" -#: ../../glossary.rst:644 +#: ../../glossary.rst:649 msgid "" "*Immortal objects* are a CPython implementation detail introduced in " ":pep:`683`." msgstr "" -#: ../../glossary.rst:647 +#: ../../glossary.rst:652 msgid "" "If an object is immortal, its :term:`reference count` is never modified, " "and therefore it is never deallocated while the interpreter is running. " "For example, :const:`True` and :const:`None` are immortal in CPython." msgstr "" -#: ../../glossary.rst:650 +#: ../../glossary.rst:655 msgid "immutable" -msgstr "" +msgstr "imutabil" -#: ../../glossary.rst:652 +#: ../../glossary.rst:657 msgid "" "An object with a fixed value. Immutable objects include numbers, strings" " and tuples. Such an object cannot be altered. A new object has to be " @@ -1198,11 +1228,11 @@ msgid "" "key in a dictionary." msgstr "" -#: ../../glossary.rst:657 +#: ../../glossary.rst:662 msgid "import path" -msgstr "" +msgstr "cale de acces pentru importuri" -#: ../../glossary.rst:659 +#: ../../glossary.rst:664 msgid "" "A list of locations (or :term:`path entries `) that are " "searched by the :term:`path based finder` for modules to import. During " @@ -1211,31 +1241,31 @@ msgid "" "attribute." msgstr "" -#: ../../glossary.rst:664 +#: ../../glossary.rst:669 msgid "importing" -msgstr "" +msgstr "importare" -#: ../../glossary.rst:666 +#: ../../glossary.rst:671 msgid "" "The process by which Python code in one module is made available to " "Python code in another module." msgstr "" -#: ../../glossary.rst:668 +#: ../../glossary.rst:673 msgid "importer" -msgstr "" +msgstr "importator" -#: ../../glossary.rst:670 +#: ../../glossary.rst:675 msgid "" "An object that both finds and loads a module; both a :term:`finder` and " ":term:`loader` object." msgstr "" -#: ../../glossary.rst:672 +#: ../../glossary.rst:677 msgid "interactive" -msgstr "" +msgstr "interactiv" -#: ../../glossary.rst:674 +#: ../../glossary.rst:679 msgid "" "Python has an interactive interpreter which means you can enter " "statements and expressions at the interpreter prompt, immediately execute" @@ -1246,11 +1276,11 @@ msgid "" "interac`." msgstr "" -#: ../../glossary.rst:681 +#: ../../glossary.rst:686 msgid "interpreted" -msgstr "" +msgstr "interpretat" -#: ../../glossary.rst:683 +#: ../../glossary.rst:688 msgid "" "Python is an interpreted language, as opposed to a compiled one, though " "the distinction can be blurry because of the presence of the bytecode " @@ -1261,11 +1291,11 @@ msgid "" ":term:`interactive`." msgstr "" -#: ../../glossary.rst:690 +#: ../../glossary.rst:695 msgid "interpreter shutdown" -msgstr "" +msgstr "oprire a interpretorului" -#: ../../glossary.rst:692 +#: ../../glossary.rst:697 msgid "" "When asked to shut down, the Python interpreter enters a special phase " "where it gradually releases all allocated resources, such as modules and " @@ -1277,17 +1307,17 @@ msgid "" "library modules or the warnings machinery)." msgstr "" -#: ../../glossary.rst:701 +#: ../../glossary.rst:706 msgid "" "The main reason for interpreter shutdown is that the ``__main__`` module " "or the script being run has finished executing." msgstr "" -#: ../../glossary.rst:703 +#: ../../glossary.rst:708 msgid "iterable" -msgstr "" +msgstr "iterabil" -#: ../../glossary.rst:705 +#: ../../glossary.rst:710 msgid "" "An object capable of returning its members one at a time. Examples of " "iterables include all sequence types (such as :class:`list`, " @@ -1298,7 +1328,7 @@ msgid "" "semantics." msgstr "" -#: ../../glossary.rst:713 +#: ../../glossary.rst:718 msgid "" "Iterables can be used in a :keyword:`for` loop and in many other places " "where a sequence is needed (:func:`zip`, :func:`map`, ...). When an " @@ -1312,11 +1342,11 @@ msgid "" ":term:`generator`." msgstr "" -#: ../../glossary.rst:723 +#: ../../glossary.rst:728 msgid "iterator" -msgstr "" +msgstr "iterator" -#: ../../glossary.rst:725 +#: ../../glossary.rst:730 msgid "" "An object representing a stream of data. Repeated calls to the " "iterator's :meth:`~iterator.__next__` method (or passing it to the built-" @@ -1335,11 +1365,11 @@ msgid "" "iteration pass, making it appear like an empty container." msgstr "" -#: ../../glossary.rst:740 +#: ../../glossary.rst:745 msgid "More information can be found in :ref:`typeiter`." msgstr "" -#: ../../glossary.rst:744 +#: ../../glossary.rst:749 msgid "" "CPython does not consistently apply the requirement that an iterator " "define :meth:`~iterator.__iter__`. And also please note that the free-" @@ -1347,11 +1377,11 @@ msgid "" "operations." msgstr "" -#: ../../glossary.rst:749 +#: ../../glossary.rst:754 msgid "key function" -msgstr "" +msgstr "funcție cheie" -#: ../../glossary.rst:751 +#: ../../glossary.rst:756 msgid "" "A key function or collation function is a callable that returns a value " "used for sorting or ordering. For example, :func:`locale.strxfrm` is " @@ -1359,7 +1389,7 @@ msgid "" "conventions." msgstr "" -#: ../../glossary.rst:756 +#: ../../glossary.rst:761 msgid "" "A number of tools in Python accept key functions to control how elements " "are ordered or grouped. They include :func:`min`, :func:`max`, " @@ -1368,7 +1398,7 @@ msgid "" ":func:`itertools.groupby`." msgstr "" -#: ../../glossary.rst:762 +#: ../../glossary.rst:767 msgid "" "There are several ways to create a key function. For example. the " ":meth:`str.lower` method can serve as a key function for case insensitive" @@ -1380,38 +1410,42 @@ msgid "" "and use key functions." msgstr "" -#: ../../glossary.rst:769 +#: ../../glossary.rst:774 msgid "keyword argument" -msgstr "" +msgstr "argument cuvânt-cheie" -#: ../../glossary.rst:771 ../../glossary.rst:1086 +#: ../../glossary.rst:776 ../../glossary.rst:1091 msgid "See :term:`argument`." msgstr "" -#: ../../glossary.rst:772 +#: ../../glossary.rst:777 msgid "lambda" -msgstr "" +msgstr "lambda" -#: ../../glossary.rst:774 +#: ../../glossary.rst:779 msgid "" "An anonymous inline function consisting of a single :term:`expression` " "which is evaluated when the function is called. The syntax to create a " "lambda function is ``lambda [parameters]: expression``" msgstr "" -#: ../../glossary.rst:777 +#: ../../glossary.rst:782 msgid "LBYL" -msgstr "" +msgstr "LBYL (IPAP)" -#: ../../glossary.rst:779 +#: ../../glossary.rst:784 msgid "" "Look before you leap. This coding style explicitly tests for pre-" "conditions before making calls or lookups. This style contrasts with the" " :term:`EAFP` approach and is characterized by the presence of many " ":keyword:`if` statements." msgstr "" +"Întâi privești, apoi pășești. This coding style explicitly tests for pre-" +"conditions before making calls or lookups. This style contrasts with the" +" :term:`EAFP` approach and is characterized by the presence of many " +":keyword:`if` statements." -#: ../../glossary.rst:784 +#: ../../glossary.rst:789 msgid "" "In a multi-threaded environment, the LBYL approach can risk introducing a" " race condition between \"the looking\" and \"the leaping\". For " @@ -1421,30 +1455,30 @@ msgid "" "approach." msgstr "" -#: ../../glossary.rst:789 +#: ../../glossary.rst:794 msgid "lexical analyzer" -msgstr "" +msgstr "analizator lexical" -#: ../../glossary.rst:792 +#: ../../glossary.rst:797 msgid "Formal name for the *tokenizer*; see :term:`token`." msgstr "" -#: ../../glossary.rst:793 +#: ../../glossary.rst:798 msgid "list" -msgstr "" +msgstr "listă" -#: ../../glossary.rst:795 +#: ../../glossary.rst:800 msgid "" "A built-in Python :term:`sequence`. Despite its name it is more akin to " "an array in other languages than to a linked list since access to " "elements is *O*\\ (1)." msgstr "" -#: ../../glossary.rst:798 +#: ../../glossary.rst:803 msgid "list comprehension" -msgstr "" +msgstr "comprehensiune a unei liste" -#: ../../glossary.rst:800 +#: ../../glossary.rst:805 #, python-brace-format msgid "" "A compact way to process all or part of the elements in a sequence and " @@ -1454,11 +1488,11 @@ msgid "" "is optional. If omitted, all elements in ``range(256)`` are processed." msgstr "" -#: ../../glossary.rst:806 +#: ../../glossary.rst:811 msgid "loader" -msgstr "" +msgstr "încărcător" -#: ../../glossary.rst:808 +#: ../../glossary.rst:813 msgid "" "An object that loads a module. It must define the :meth:`!exec_module` " "and :meth:`!create_module` methods to implement the " @@ -1466,57 +1500,57 @@ msgid "" "by a :term:`finder`. See also:" msgstr "" -#: ../../glossary.rst:814 +#: ../../glossary.rst:819 msgid ":ref:`finders-and-loaders`" msgstr "" -#: ../../glossary.rst:815 +#: ../../glossary.rst:820 msgid ":class:`importlib.abc.Loader`" msgstr "" -#: ../../glossary.rst:816 +#: ../../glossary.rst:821 msgid ":pep:`302`" msgstr "" -#: ../../glossary.rst:817 +#: ../../glossary.rst:822 msgid "locale encoding" -msgstr "" +msgstr "codificare locală" -#: ../../glossary.rst:819 +#: ../../glossary.rst:824 msgid "" "On Unix, it is the encoding of the LC_CTYPE locale. It can be set with " ":func:`locale.setlocale(locale.LC_CTYPE, new_locale) `." msgstr "" -#: ../../glossary.rst:822 +#: ../../glossary.rst:827 msgid "On Windows, it is the ANSI code page (ex: ``\"cp1252\"``)." msgstr "" -#: ../../glossary.rst:824 +#: ../../glossary.rst:829 msgid "On Android and VxWorks, Python uses ``\"utf-8\"`` as the locale encoding." msgstr "" -#: ../../glossary.rst:826 +#: ../../glossary.rst:831 msgid ":func:`locale.getencoding` can be used to get the locale encoding." msgstr "" -#: ../../glossary.rst:828 +#: ../../glossary.rst:833 msgid "See also the :term:`filesystem encoding and error handler`." msgstr "" -#: ../../glossary.rst:829 +#: ../../glossary.rst:834 msgid "magic method" -msgstr "" +msgstr "metodă magică" -#: ../../glossary.rst:833 +#: ../../glossary.rst:838 msgid "An informal synonym for :term:`special method`." msgstr "" -#: ../../glossary.rst:834 +#: ../../glossary.rst:839 msgid "mapping" -msgstr "" +msgstr "asociere" -#: ../../glossary.rst:836 +#: ../../glossary.rst:841 msgid "" "A container object that supports arbitrary key lookups and implements the" " methods specified in the :class:`collections.abc.Mapping` or " @@ -1526,28 +1560,28 @@ msgid "" ":class:`collections.Counter`." msgstr "" -#: ../../glossary.rst:842 +#: ../../glossary.rst:847 msgid "meta path finder" -msgstr "" +msgstr "descoperitor de meta-cale de acces" -#: ../../glossary.rst:844 +#: ../../glossary.rst:849 msgid "" "A :term:`finder` returned by a search of :data:`sys.meta_path`. Meta " "path finders are related to, but different from :term:`path entry finders" " `." msgstr "" -#: ../../glossary.rst:848 +#: ../../glossary.rst:853 msgid "" "See :class:`importlib.abc.MetaPathFinder` for the methods that meta path " "finders implement." msgstr "" -#: ../../glossary.rst:850 +#: ../../glossary.rst:855 msgid "metaclass" -msgstr "" +msgstr "meta-clasă" -#: ../../glossary.rst:852 +#: ../../glossary.rst:857 msgid "" "The class of a class. Class definitions create a class name, a class " "dictionary, and a list of base classes. The metaclass is responsible for" @@ -1560,15 +1594,15 @@ msgid "" "implementing singletons, and many other tasks." msgstr "" -#: ../../glossary.rst:862 +#: ../../glossary.rst:867 msgid "More information can be found in :ref:`metaclasses`." msgstr "" -#: ../../glossary.rst:831 ../../glossary.rst:863 ../../glossary.rst:1231 +#: ../../glossary.rst:836 ../../glossary.rst:868 ../../glossary.rst:1241 msgid "method" -msgstr "" +msgstr "metodă" -#: ../../glossary.rst:865 +#: ../../glossary.rst:870 msgid "" "A function which is defined inside a class body. If called as an " "attribute of an instance of that class, the method will get the instance " @@ -1576,83 +1610,86 @@ msgid "" "See :term:`function` and :term:`nested scope`." msgstr "" -#: ../../glossary.rst:869 +#: ../../glossary.rst:874 msgid "method resolution order" -msgstr "" +msgstr "ordine de rezolvare a metodelor" -#: ../../glossary.rst:871 +#: ../../glossary.rst:876 msgid "" "Method Resolution Order is the order in which base classes are searched " "for a member during lookup. See :ref:`python_2.3_mro` for details of the " "algorithm used by the Python interpreter since the 2.3 release." msgstr "" +"Ordinea de Rezolvare a Metodelor is the order in which base classes are " +"searched for a member during lookup. See :ref:`python_2.3_mro` for details " +"of the algorithm used by the Python interpreter since the 2.3 release." -#: ../../glossary.rst:874 +#: ../../glossary.rst:879 msgid "module" -msgstr "" +msgstr "modul" -#: ../../glossary.rst:876 +#: ../../glossary.rst:881 msgid "" "An object that serves as an organizational unit of Python code. Modules " "have a namespace containing arbitrary Python objects. Modules are loaded" " into Python by the process of :term:`importing`." msgstr "" -#: ../../glossary.rst:880 +#: ../../glossary.rst:885 msgid "See also :term:`package`." msgstr "" -#: ../../glossary.rst:881 +#: ../../glossary.rst:886 msgid "module spec" -msgstr "" +msgstr "specificație a unui modul" -#: ../../glossary.rst:883 +#: ../../glossary.rst:888 msgid "" "A namespace containing the import-related information used to load a " "module. An instance of :class:`importlib.machinery.ModuleSpec`." msgstr "" -#: ../../glossary.rst:886 +#: ../../glossary.rst:891 msgid "See also :ref:`module-specs`." msgstr "" -#: ../../glossary.rst:887 +#: ../../glossary.rst:892 msgid "MRO" -msgstr "" +msgstr "MRO (ORM)" -#: ../../glossary.rst:889 +#: ../../glossary.rst:894 msgid "See :term:`method resolution order`." msgstr "" -#: ../../glossary.rst:890 +#: ../../glossary.rst:895 msgid "mutable" -msgstr "" +msgstr "mutabil" -#: ../../glossary.rst:892 +#: ../../glossary.rst:897 msgid "" "Mutable objects can change their value but keep their :func:`id`. See " "also :term:`immutable`." msgstr "" -#: ../../glossary.rst:894 +#: ../../glossary.rst:899 msgid "named tuple" -msgstr "" +msgstr "tuplu nominalizat" -#: ../../glossary.rst:896 +#: ../../glossary.rst:901 msgid "" "The term \"named tuple\" applies to any type or class that inherits from " "tuple and whose indexable elements are also accessible using named " "attributes. The type or class may have other features as well." msgstr "" -#: ../../glossary.rst:900 +#: ../../glossary.rst:905 msgid "" "Several built-in types are named tuples, including the values returned by" " :func:`time.localtime` and :func:`os.stat`. Another example is " ":data:`sys.float_info`::" msgstr "" -#: ../../glossary.rst:904 +#: ../../glossary.rst:909 msgid "" ">>> sys.float_info[1] # indexed access\n" "1024\n" @@ -1662,7 +1699,7 @@ msgid "" "True" msgstr "" -#: ../../glossary.rst:911 +#: ../../glossary.rst:916 msgid "" "Some named tuples are built-in types (such as the above examples). " "Alternatively, a named tuple can be created from a regular class " @@ -1674,11 +1711,11 @@ msgid "" "tuples." msgstr "" -#: ../../glossary.rst:919 +#: ../../glossary.rst:924 msgid "namespace" -msgstr "" +msgstr "spațiu de nume" -#: ../../glossary.rst:921 +#: ../../glossary.rst:926 msgid "" "The place where a variable is stored. Namespaces are implemented as " "dictionaries. There are the local, global and built-in namespaces as " @@ -1692,11 +1729,11 @@ msgid "" ":mod:`itertools` modules, respectively." msgstr "" -#: ../../glossary.rst:931 +#: ../../glossary.rst:936 msgid "namespace package" -msgstr "" +msgstr "pachet spațiu de nume" -#: ../../glossary.rst:933 +#: ../../glossary.rst:938 msgid "" "A :term:`package` which serves only as a container for subpackages. " "Namespace packages may have no physical representation, and specifically " @@ -1704,28 +1741,28 @@ msgid "" "``__init__.py`` file." msgstr "" -#: ../../glossary.rst:938 +#: ../../glossary.rst:943 msgid "" "Namespace packages allow several individually installable packages to " "have a common parent package. Otherwise, it is recommended to use a " ":term:`regular package`." msgstr "" -#: ../../glossary.rst:941 +#: ../../glossary.rst:946 msgid "" "For more information, see :pep:`420` and :ref:`reference-namespace-" "package`." msgstr "" -#: ../../glossary.rst:943 +#: ../../glossary.rst:948 msgid "See also :term:`module`." msgstr "" -#: ../../glossary.rst:944 +#: ../../glossary.rst:949 msgid "nested scope" -msgstr "" +msgstr "domeniu de valabilitate imbricat" -#: ../../glossary.rst:946 +#: ../../glossary.rst:951 msgid "" "The ability to refer to a variable in an enclosing definition. For " "instance, a function defined inside another function can refer to " @@ -1736,11 +1773,11 @@ msgid "" " outer scopes." msgstr "" -#: ../../glossary.rst:953 +#: ../../glossary.rst:958 msgid "new-style class" -msgstr "" +msgstr "clasă în-noul-stil" -#: ../../glossary.rst:955 +#: ../../glossary.rst:960 msgid "" "Old name for the flavor of classes now used for all class objects. In " "earlier Python versions, only new-style classes could use Python's newer," @@ -1749,21 +1786,21 @@ msgid "" "methods." msgstr "" -#: ../../glossary.rst:960 +#: ../../glossary.rst:965 msgid "object" -msgstr "" +msgstr "obiect" -#: ../../glossary.rst:962 +#: ../../glossary.rst:967 msgid "" "Any data with state (attributes or value) and defined behavior (methods)." " Also the ultimate base class of any :term:`new-style class`." msgstr "" -#: ../../glossary.rst:965 +#: ../../glossary.rst:970 msgid "optimized scope" -msgstr "" +msgstr "domeniu de valabilitate optimizat" -#: ../../glossary.rst:967 +#: ../../glossary.rst:972 msgid "" "A scope where target local variable names are reliably known to the " "compiler when the code is compiled, allowing optimization of read and " @@ -1774,33 +1811,33 @@ msgid "" "nonlocal variable names are restricted to optimized scopes." msgstr "" -#: ../../glossary.rst:974 +#: ../../glossary.rst:979 msgid "package" -msgstr "" +msgstr "pachet" -#: ../../glossary.rst:976 +#: ../../glossary.rst:981 msgid "" "A Python :term:`module` which can contain submodules or recursively, " "subpackages. Technically, a package is a Python module with a " "``__path__`` attribute." msgstr "" -#: ../../glossary.rst:980 +#: ../../glossary.rst:985 msgid "See also :term:`regular package` and :term:`namespace package`." msgstr "" -#: ../../glossary.rst:981 +#: ../../glossary.rst:986 msgid "parameter" -msgstr "" +msgstr "parametru" -#: ../../glossary.rst:983 +#: ../../glossary.rst:988 msgid "" "A named entity in a :term:`function` (or method) definition that " "specifies an :term:`argument` (or in some cases, arguments) that the " "function can accept. There are five kinds of parameter:" msgstr "" -#: ../../glossary.rst:987 +#: ../../glossary.rst:992 msgid "" ":dfn:`positional-or-keyword`: specifies an argument that can be passed " "either :term:`positionally ` or as a :term:`keyword argument " @@ -1808,11 +1845,11 @@ msgid "" "and *bar* in the following::" msgstr "" -#: ../../glossary.rst:992 +#: ../../glossary.rst:997 msgid "def func(foo, bar=None): ..." msgstr "" -#: ../../glossary.rst:996 +#: ../../glossary.rst:1001 msgid "" ":dfn:`positional-only`: specifies an argument that can be supplied only " "by position. Positional-only parameters can be defined by including a " @@ -1820,11 +1857,11 @@ msgid "" "them, for example *posonly1* and *posonly2* in the following::" msgstr "" -#: ../../glossary.rst:1001 +#: ../../glossary.rst:1006 msgid "def func(posonly1, posonly2, /, positional_or_keyword): ..." msgstr "" -#: ../../glossary.rst:1005 +#: ../../glossary.rst:1010 msgid "" ":dfn:`keyword-only`: specifies an argument that can be supplied only by " "keyword. Keyword-only parameters can be defined by including a single " @@ -1833,11 +1870,11 @@ msgid "" " the following::" msgstr "" -#: ../../glossary.rst:1011 +#: ../../glossary.rst:1016 msgid "def func(arg, *, kw_only1, kw_only2): ..." msgstr "" -#: ../../glossary.rst:1013 +#: ../../glossary.rst:1018 msgid "" ":dfn:`var-positional`: specifies that an arbitrary sequence of positional" " arguments can be provided (in addition to any positional arguments " @@ -1846,11 +1883,11 @@ msgid "" "following::" msgstr "" -#: ../../glossary.rst:1019 +#: ../../glossary.rst:1024 msgid "def func(*args, **kwargs): ..." msgstr "" -#: ../../glossary.rst:1021 +#: ../../glossary.rst:1026 msgid "" ":dfn:`var-keyword`: specifies that arbitrarily many keyword arguments can" " be provided (in addition to any keyword arguments already accepted by " @@ -1858,13 +1895,13 @@ msgid "" "parameter name with ``**``, for example *kwargs* in the example above." msgstr "" -#: ../../glossary.rst:1027 +#: ../../glossary.rst:1032 msgid "" "Parameters can specify both optional and required arguments, as well as " "default values for some optional arguments." msgstr "" -#: ../../glossary.rst:1030 +#: ../../glossary.rst:1035 msgid "" "See also the :term:`argument` glossary entry, the FAQ question on " ":ref:`the difference between arguments and parameters ` which " "searches an :term:`import path` for modules." msgstr "" -#: ../../glossary.rst:1055 +#: ../../glossary.rst:1060 msgid "path-like object" -msgstr "" +msgstr "obiect ca-o-cale-de-acces" -#: ../../glossary.rst:1057 +#: ../../glossary.rst:1062 msgid "" "An object representing a file system path. A path-like object is either a" " :class:`str` or :class:`bytes` object representing a path, or an object " @@ -1936,19 +1973,23 @@ msgid "" "Introduced by :pep:`519`." msgstr "" -#: ../../glossary.rst:1065 +#: ../../glossary.rst:1070 msgid "PEP" -msgstr "" +msgstr "PEP (PIP)" -#: ../../glossary.rst:1067 +#: ../../glossary.rst:1072 msgid "" "Python Enhancement Proposal. A PEP is a design document providing " "information to the Python community, or describing a new feature for " "Python or its processes or environment. PEPs should provide a concise " "technical specification and a rationale for proposed features." msgstr "" +"Propunere de Îmbunătățire a Python-ului. A PEP is a design document " +"providing information to the Python community, or describing a new " +"feature for Python or its processes or environment. PEPs should provide " +"a concise technical specification and a rationale for proposed features." -#: ../../glossary.rst:1073 +#: ../../glossary.rst:1078 msgid "" "PEPs are intended to be the primary mechanisms for proposing major new " "features, for collecting community input on an issue, and for documenting" @@ -1957,29 +1998,29 @@ msgid "" "dissenting opinions." msgstr "" -#: ../../glossary.rst:1079 +#: ../../glossary.rst:1084 msgid "See :pep:`1`." msgstr "" -#: ../../glossary.rst:1080 +#: ../../glossary.rst:1085 msgid "portion" -msgstr "" +msgstr "porțiune" -#: ../../glossary.rst:1082 +#: ../../glossary.rst:1087 msgid "" "A set of files in a single directory (possibly stored in a zip file) that" " contribute to a namespace package, as defined in :pep:`420`." msgstr "" -#: ../../glossary.rst:1084 +#: ../../glossary.rst:1089 msgid "positional argument" -msgstr "" +msgstr "argument pozițional" -#: ../../glossary.rst:1087 +#: ../../glossary.rst:1092 msgid "provisional API" -msgstr "" +msgstr "API (IPA) provizorie" -#: ../../glossary.rst:1089 +#: ../../glossary.rst:1094 msgid "" "A provisional API is one which has been deliberately excluded from the " "standard library's backwards compatibility guarantees. While major " @@ -1991,44 +2032,44 @@ msgid "" "of the API." msgstr "" -#: ../../glossary.rst:1098 +#: ../../glossary.rst:1103 msgid "" "Even for provisional APIs, backwards incompatible changes are seen as a " "\"solution of last resort\" - every attempt will still be made to find a " "backwards compatible resolution to any identified problems." msgstr "" -#: ../../glossary.rst:1102 +#: ../../glossary.rst:1107 msgid "" "This process allows the standard library to continue to evolve over time," " without locking in problematic design errors for extended periods of " "time. See :pep:`411` for more details." msgstr "" -#: ../../glossary.rst:1105 +#: ../../glossary.rst:1110 msgid "provisional package" -msgstr "" +msgstr "pachet provizoriu" -#: ../../glossary.rst:1107 +#: ../../glossary.rst:1112 msgid "See :term:`provisional API`." msgstr "" -#: ../../glossary.rst:1108 +#: ../../glossary.rst:1113 msgid "Python 3000" -msgstr "" +msgstr "Python 3000" -#: ../../glossary.rst:1110 +#: ../../glossary.rst:1115 msgid "" "Nickname for the Python 3.x release line (coined long ago when the " "release of version 3 was something in the distant future.) This is also " "abbreviated \"Py3k\"." msgstr "" -#: ../../glossary.rst:1113 +#: ../../glossary.rst:1118 msgid "Pythonic" -msgstr "" +msgstr "Python-ic" -#: ../../glossary.rst:1115 +#: ../../glossary.rst:1120 msgid "" "An idea or piece of code which closely follows the most common idioms of " "the Python language, rather than implementing code using concepts common " @@ -2038,27 +2079,27 @@ msgid "" "with Python sometimes use a numerical counter instead::" msgstr "" -#: ../../glossary.rst:1122 +#: ../../glossary.rst:1127 msgid "" "for i in range(len(food)):\n" " print(food[i])" msgstr "" -#: ../../glossary.rst:1125 +#: ../../glossary.rst:1130 msgid "As opposed to the cleaner, Pythonic method::" msgstr "" -#: ../../glossary.rst:1127 +#: ../../glossary.rst:1132 msgid "" "for piece in food:\n" " print(piece)" msgstr "" -#: ../../glossary.rst:1129 +#: ../../glossary.rst:1134 msgid "qualified name" -msgstr "" +msgstr "nume calificat" -#: ../../glossary.rst:1131 +#: ../../glossary.rst:1136 msgid "" "A dotted name showing the \"path\" from a module's global scope to a " "class, function or method defined in that module, as defined in " @@ -2066,7 +2107,7 @@ msgid "" "the same as the object's name::" msgstr "" -#: ../../glossary.rst:1136 +#: ../../glossary.rst:1141 msgid "" ">>> class C:\n" "... class D:\n" @@ -2081,25 +2122,25 @@ msgid "" "'C.D.meth'" msgstr "" -#: ../../glossary.rst:1148 +#: ../../glossary.rst:1153 msgid "" "When used to refer to modules, the *fully qualified name* means the " "entire dotted path to the module, including any parent packages, e.g. " "``email.mime.text``::" msgstr "" -#: ../../glossary.rst:1152 +#: ../../glossary.rst:1157 msgid "" ">>> import email.mime.text\n" ">>> email.mime.text.__name__\n" "'email.mime.text'" msgstr "" -#: ../../glossary.rst:1155 +#: ../../glossary.rst:1160 msgid "reference count" -msgstr "" +msgstr "contor de referințe" -#: ../../glossary.rst:1157 +#: ../../glossary.rst:1162 msgid "" "The number of references to an object. When the reference count of an " "object drops to zero, it is deallocated. Some objects are " @@ -2111,35 +2152,44 @@ msgid "" "particular object." msgstr "" -#: ../../glossary.rst:1165 -msgid "regular package" +#: ../../glossary.rst:1171 +msgid "" +"In :term:`CPython`, reference counts are not considered to be stable or " +"well-defined values; the number of references to an object, and how that " +"number is affected by Python code, may be different between versions." msgstr "" -#: ../../glossary.rst:1167 +#: ../../glossary.rst:1175 +msgid "regular package" +msgstr "pachet regulat" + +#: ../../glossary.rst:1177 msgid "" "A traditional :term:`package`, such as a directory containing an " "``__init__.py`` file." msgstr "" -#: ../../glossary.rst:1170 +#: ../../glossary.rst:1180 msgid "See also :term:`namespace package`." msgstr "" -#: ../../glossary.rst:1171 +#: ../../glossary.rst:1181 msgid "REPL" -msgstr "" +msgstr "REPL (CEAR)" -#: ../../glossary.rst:1173 +#: ../../glossary.rst:1183 msgid "" "An acronym for the \"read–eval–print loop\", another name for the " ":term:`interactive` interpreter shell." msgstr "" +"Un acronim pentru \"bucla citește-evaluează-afișează-reia\", another " +"name for the :term:`interactive` interpreter shell." -#: ../../glossary.rst:1175 +#: ../../glossary.rst:1185 msgid "__slots__" -msgstr "" +msgstr "__slots__" -#: ../../glossary.rst:1177 +#: ../../glossary.rst:1187 msgid "" "A declaration inside a class that saves memory by pre-declaring space for" " instance attributes and eliminating instance dictionaries. Though " @@ -2148,11 +2198,11 @@ msgid "" "memory-critical application." msgstr "" -#: ../../glossary.rst:1182 +#: ../../glossary.rst:1192 msgid "sequence" -msgstr "" +msgstr "secvență" -#: ../../glossary.rst:1184 +#: ../../glossary.rst:1194 msgid "" "An :term:`iterable` which supports efficient element access using integer" " indices via the :meth:`~object.__getitem__` special method and defines a" @@ -2164,7 +2214,7 @@ msgid "" ":term:`hashable` keys rather than integers." msgstr "" -#: ../../glossary.rst:1193 +#: ../../glossary.rst:1203 msgid "" "The :class:`collections.abc.Sequence` abstract base class defines a much " "richer interface that goes beyond just :meth:`~object.__getitem__` and " @@ -2176,11 +2226,11 @@ msgid "" "common>`." msgstr "" -#: ../../glossary.rst:1202 +#: ../../glossary.rst:1212 msgid "set comprehension" -msgstr "" +msgstr "comprehensiune sub formă de mulțime" -#: ../../glossary.rst:1204 +#: ../../glossary.rst:1214 #, python-brace-format msgid "" "A compact way to process all or part of the elements in an iterable and " @@ -2189,21 +2239,21 @@ msgid "" ":ref:`comprehensions`." msgstr "" -#: ../../glossary.rst:1208 +#: ../../glossary.rst:1218 msgid "single dispatch" -msgstr "" +msgstr "distribuție singulară" -#: ../../glossary.rst:1210 +#: ../../glossary.rst:1220 msgid "" "A form of :term:`generic function` dispatch where the implementation is " "chosen based on the type of a single argument." msgstr "" -#: ../../glossary.rst:1212 +#: ../../glossary.rst:1222 msgid "slice" -msgstr "" +msgstr "tranșă" -#: ../../glossary.rst:1214 +#: ../../glossary.rst:1224 msgid "" "An object usually containing a portion of a :term:`sequence`. A slice is" " created using the subscript notation, ``[]`` with colons between numbers" @@ -2211,34 +2261,39 @@ msgid "" "bracket (subscript) notation uses :class:`slice` objects internally." msgstr "" -#: ../../glossary.rst:1218 +#: ../../glossary.rst:1228 msgid "soft deprecated" -msgstr "" +msgstr "dezafectat slab" -#: ../../glossary.rst:1220 +#: ../../glossary.rst:1230 msgid "" "A soft deprecated API should not be used in new code, but it is safe for " "already existing code to use it. The API remains documented and tested, " "but will not be enhanced further." msgstr "" +"O IPA dezafectată slab should not be used in new code, but it is safe for " +"already existing code to use it. The API remains documented and tested, " +"but will not be enhanced further." -#: ../../glossary.rst:1224 +#: ../../glossary.rst:1234 msgid "" "Soft deprecation, unlike normal deprecation, does not plan on removing " "the API and will not emit warnings." msgstr "" +"Dezafectarea slabă, unlike normal deprecation, does not plan on removing " +"the API and will not emit warnings." -#: ../../glossary.rst:1227 +#: ../../glossary.rst:1237 msgid "" "See `PEP 387: Soft Deprecation `_." msgstr "" -#: ../../glossary.rst:1229 +#: ../../glossary.rst:1239 msgid "special method" -msgstr "" +msgstr "metodă specială" -#: ../../glossary.rst:1233 +#: ../../glossary.rst:1243 msgid "" "A method that is called implicitly by Python to execute a certain " "operation on a type, such as addition. Such methods have names starting " @@ -2246,33 +2301,60 @@ msgid "" ":ref:`specialnames`." msgstr "" -#: ../../glossary.rst:1237 -msgid "statement" +#: ../../glossary.rst:1247 +msgid "standard library" +msgstr "bibliotecă standard" + +#: ../../glossary.rst:1249 +msgid "" +"The collection of :term:`packages `, :term:`modules ` " +"and :term:`extension modules ` distributed as a part of" +" the official Python interpreter package. The exact membership of the " +"collection may vary based on platform, available system libraries, or " +"other criteria. Documentation can be found at :ref:`library-index`." msgstr "" -#: ../../glossary.rst:1239 +#: ../../glossary.rst:1255 +msgid "" +"See also :data:`sys.stdlib_module_names` for a list of all possible " +"standard library module names." +msgstr "" + +#: ../../glossary.rst:1257 +msgid "statement" +msgstr "instrucțiune" + +#: ../../glossary.rst:1259 msgid "" "A statement is part of a suite (a \"block\" of code). A statement is " "either an :term:`expression` or one of several constructs with a keyword," " such as :keyword:`if`, :keyword:`while` or :keyword:`for`." msgstr "" -#: ../../glossary.rst:1242 +#: ../../glossary.rst:1262 msgid "static type checker" -msgstr "" +msgstr "verificator static de tipuri" -#: ../../glossary.rst:1244 +#: ../../glossary.rst:1264 msgid "" "An external tool that reads Python code and analyzes it, looking for " "issues such as incorrect types. See also :term:`type hints ` " "and the :mod:`typing` module." msgstr "" -#: ../../glossary.rst:1247 +#: ../../glossary.rst:1267 +msgid "stdlib" +msgstr "stdlib (biblio-stas)" + +#: ../../glossary.rst:1269 +msgid "An abbreviation of :term:`standard library`." +msgstr "O abreviere a expresiei :term:`standard library`." + +#: ../../glossary.rst:1270 msgid "strong reference" -msgstr "" +msgstr "referință strânsă" -#: ../../glossary.rst:1249 +#: ../../glossary.rst:1272 msgid "" "In Python's C API, a strong reference is a reference to an object which " "is owned by the code holding the reference. The strong reference is " @@ -2280,7 +2362,7 @@ msgid "" "released with :c:func:`Py_DECREF` when the reference is deleted." msgstr "" -#: ../../glossary.rst:1255 +#: ../../glossary.rst:1278 msgid "" "The :c:func:`Py_NewRef` function can be used to create a strong reference" " to an object. Usually, the :c:func:`Py_DECREF` function must be called " @@ -2288,40 +2370,40 @@ msgid "" " to avoid leaking one reference." msgstr "" -#: ../../glossary.rst:1260 +#: ../../glossary.rst:1283 msgid "See also :term:`borrowed reference`." msgstr "" -#: ../../glossary.rst:1261 +#: ../../glossary.rst:1284 msgid "text encoding" -msgstr "" +msgstr "codificare a unui text" -#: ../../glossary.rst:1263 +#: ../../glossary.rst:1286 msgid "" "A string in Python is a sequence of Unicode code points (in range " "``U+0000``--``U+10FFFF``). To store or transfer a string, it needs to be " "serialized as a sequence of bytes." msgstr "" -#: ../../glossary.rst:1267 +#: ../../glossary.rst:1290 msgid "" "Serializing a string into a sequence of bytes is known as \"encoding\", " "and recreating the string from the sequence of bytes is known as " "\"decoding\"." msgstr "" -#: ../../glossary.rst:1270 +#: ../../glossary.rst:1293 msgid "" "There are a variety of different text serialization :ref:`codecs " "`, which are collectively referred to as \"text " "encodings\"." msgstr "" -#: ../../glossary.rst:1273 +#: ../../glossary.rst:1296 msgid "text file" -msgstr "" +msgstr "fișier text" -#: ../../glossary.rst:1275 +#: ../../glossary.rst:1298 msgid "" "A :term:`file object` able to read and write :class:`str` objects. Often," " a text file actually accesses a byte-oriented datastream and handles the" @@ -2330,34 +2412,34 @@ msgid "" ":data:`sys.stdout`, and instances of :class:`io.StringIO`." msgstr "" -#: ../../glossary.rst:1282 +#: ../../glossary.rst:1305 msgid "" "See also :term:`binary file` for a file object able to read and write " ":term:`bytes-like objects `." msgstr "" -#: ../../glossary.rst:1284 +#: ../../glossary.rst:1307 msgid "token" -msgstr "" +msgstr "simbol" -#: ../../glossary.rst:1287 +#: ../../glossary.rst:1310 msgid "" "A small unit of source code, generated by the :ref:`lexical analyzer " "` (also called the *tokenizer*). Names, numbers, strings, " "operators, newlines and similar are represented by tokens." msgstr "" -#: ../../glossary.rst:1292 +#: ../../glossary.rst:1315 msgid "" "The :mod:`tokenize` module exposes Python's lexical analyzer. The " ":mod:`token` module contains information on the various types of tokens." msgstr "" -#: ../../glossary.rst:1295 +#: ../../glossary.rst:1318 msgid "triple-quoted string" -msgstr "" +msgstr "șir de caractere pus între ghilimele triple" -#: ../../glossary.rst:1297 +#: ../../glossary.rst:1320 msgid "" "A string which is bound by three instances of either a quotation mark " "(\") or an apostrophe ('). While they don't provide any functionality " @@ -2368,11 +2450,11 @@ msgid "" "docstrings." msgstr "" -#: ../../glossary.rst:1304 +#: ../../glossary.rst:1327 msgid "type" -msgstr "" +msgstr "tip" -#: ../../glossary.rst:1306 +#: ../../glossary.rst:1329 msgid "" "The type of a Python object determines what kind of object it is; every " "object has a type. An object's type is accessible as its " @@ -2380,21 +2462,21 @@ msgid "" "``type(obj)``." msgstr "" -#: ../../glossary.rst:1310 +#: ../../glossary.rst:1333 msgid "type alias" -msgstr "" +msgstr "pseudonim de tip" -#: ../../glossary.rst:1312 +#: ../../glossary.rst:1335 msgid "A synonym for a type, created by assigning the type to an identifier." msgstr "" -#: ../../glossary.rst:1314 +#: ../../glossary.rst:1337 msgid "" "Type aliases are useful for simplifying :term:`type hints `. " "For example::" msgstr "" -#: ../../glossary.rst:1317 +#: ../../glossary.rst:1340 msgid "" "def remove_gray_shades(\n" " colors: list[tuple[int, int, int]]) -> list[tuple[int, int, " @@ -2402,11 +2484,11 @@ msgid "" " pass" msgstr "" -#: ../../glossary.rst:1321 +#: ../../glossary.rst:1344 msgid "could be made more readable like this::" msgstr "" -#: ../../glossary.rst:1323 +#: ../../glossary.rst:1346 msgid "" "Color = tuple[int, int, int]\n" "\n" @@ -2414,38 +2496,38 @@ msgid "" " pass" msgstr "" -#: ../../glossary.rst:1328 ../../glossary.rst:1342 +#: ../../glossary.rst:1351 ../../glossary.rst:1365 msgid "See :mod:`typing` and :pep:`484`, which describe this functionality." msgstr "" -#: ../../glossary.rst:1329 +#: ../../glossary.rst:1352 msgid "type hint" -msgstr "" +msgstr "indicație de tip" -#: ../../glossary.rst:1331 +#: ../../glossary.rst:1354 msgid "" "An :term:`annotation` that specifies the expected type for a variable, a " "class attribute, or a function parameter or return value." msgstr "" -#: ../../glossary.rst:1334 +#: ../../glossary.rst:1357 msgid "" "Type hints are optional and are not enforced by Python but they are " "useful to :term:`static type checkers `. They can " "also aid IDEs with code completion and refactoring." msgstr "" -#: ../../glossary.rst:1338 +#: ../../glossary.rst:1361 msgid "" "Type hints of global variables, class attributes, and functions, but not " "local variables, can be accessed using :func:`typing.get_type_hints`." msgstr "" -#: ../../glossary.rst:1343 +#: ../../glossary.rst:1366 msgid "universal newlines" -msgstr "" +msgstr "caractere rând-nou universale" -#: ../../glossary.rst:1345 +#: ../../glossary.rst:1368 msgid "" "A manner of interpreting text streams in which all of the following are " "recognized as ending a line: the Unix end-of-line convention ``'\\n'``, " @@ -2454,50 +2536,50 @@ msgid "" ":func:`bytes.splitlines` for an additional use." msgstr "" -#: ../../glossary.rst:1350 +#: ../../glossary.rst:1373 msgid "variable annotation" -msgstr "" +msgstr "adnotare de variabilă" -#: ../../glossary.rst:1352 +#: ../../glossary.rst:1375 msgid "An :term:`annotation` of a variable or a class attribute." msgstr "" -#: ../../glossary.rst:1354 +#: ../../glossary.rst:1377 msgid "When annotating a variable or a class attribute, assignment is optional::" msgstr "" -#: ../../glossary.rst:1356 +#: ../../glossary.rst:1379 msgid "" "class C:\n" " field: 'annotation'" msgstr "" -#: ../../glossary.rst:1359 +#: ../../glossary.rst:1382 msgid "" "Variable annotations are usually used for :term:`type hints `:" " for example this variable is expected to take :class:`int` values::" msgstr "" -#: ../../glossary.rst:1363 +#: ../../glossary.rst:1386 msgid "count: int = 0" msgstr "" -#: ../../glossary.rst:1365 +#: ../../glossary.rst:1388 msgid "Variable annotation syntax is explained in section :ref:`annassign`." msgstr "" -#: ../../glossary.rst:1367 +#: ../../glossary.rst:1390 msgid "" "See :term:`function annotation`, :pep:`484` and :pep:`526`, which " "describe this functionality. Also see :ref:`annotations-howto` for best " "practices on working with annotations." msgstr "" -#: ../../glossary.rst:1371 +#: ../../glossary.rst:1394 msgid "virtual environment" -msgstr "" +msgstr "mediu virtual" -#: ../../glossary.rst:1373 +#: ../../glossary.rst:1396 msgid "" "A cooperatively isolated runtime environment that allows Python users and" " applications to install and upgrade Python distribution packages without" @@ -2505,25 +2587,36 @@ msgid "" "the same system." msgstr "" -#: ../../glossary.rst:1378 +#: ../../glossary.rst:1401 msgid "See also :mod:`venv`." msgstr "" -#: ../../glossary.rst:1379 +#: ../../glossary.rst:1402 msgid "virtual machine" -msgstr "" +msgstr "mașină virtuală" -#: ../../glossary.rst:1381 +#: ../../glossary.rst:1404 msgid "" "A computer defined entirely in software. Python's virtual machine " "executes the :term:`bytecode` emitted by the bytecode compiler." msgstr "" -#: ../../glossary.rst:1383 -msgid "Zen of Python" +#: ../../glossary.rst:1406 +msgid "walrus operator" +msgstr "operator morsă" + +#: ../../glossary.rst:1408 +msgid "" +"A light-hearted way to refer to the :ref:`assignment expression " +"` operator ``:=`` because it looks a bit like a " +"walrus if you turn your head." msgstr "" -#: ../../glossary.rst:1385 +#: ../../glossary.rst:1411 +msgid "Zen of Python" +msgstr "Zenul Python-ului" + +#: ../../glossary.rst:1413 msgid "" "Listing of Python design principles and philosophies that are helpful in " "understanding and using the language. The listing can be found by typing" @@ -2532,18 +2625,17 @@ msgstr "" #: ../../glossary.rst:292 msgid "C-contiguous" -msgstr "" +msgstr "contiguu ca în C" #: ../../glossary.rst:292 msgid "Fortran contiguous" -msgstr "" +msgstr "contiguu ca în Fortran" -#: ../../glossary.rst:831 +#: ../../glossary.rst:836 msgid "magic" -msgstr "" +msgstr "magic" -#: ../../glossary.rst:1231 +#: ../../glossary.rst:1241 msgid "special" -msgstr "" - +msgstr "special" diff --git a/scripturi/compilarea_traducerii.ps1 b/scripturi/compilarea_traducerii.ps1 index 9bd2980..9195b38 100644 --- a/scripturi/compilarea_traducerii.ps1 +++ b/scripturi/compilarea_traducerii.ps1 @@ -1,5 +1,5 @@ $director_convenabil = "C:\octavian\invatare_Python_2025\traducerea_documentatiei\proiectul_traducerii" -$proiectul = "$director_convenabil\Python-3.13.5\Doc" +$proiectul = "$director_convenabil\Python-3.13.6\Doc" $doctree = "$proiectul\build\doctrees" $sursa = $proiectul $tinta = "$proiectul\build" diff --git a/scripturi/lintare_si_copiere.ps1 b/scripturi/lintare_si_copiere.ps1 index 47dafc2..780b11f 100644 --- a/scripturi/lintare_si_copiere.ps1 +++ b/scripturi/lintare_si_copiere.ps1 @@ -27,7 +27,7 @@ else } $directorul_traducerii = "C:\octavian\invatare_Python_2025\traducerea_documentatiei" -$directorul_fragmentelor = "locale_python_3_13_5\ro\LC_MESSAGES" +$directorul_fragmentelor = "locale_python_3_13_6\ro\LC_MESSAGES" if( 2 -eq $numarul_componentelor ) { @@ -35,7 +35,7 @@ if( 2 -eq $numarul_componentelor ) } $directorul_versiunii = "directorul_locale_cu_traduceri\$directorul_fragmentelor" -$proiectul_versiunii = "proiectul_traducerii\Python-3.13.5\Doc" +$proiectul_versiunii = "proiectul_traducerii\Python-3.13.6\Doc" $directorul_compilarii = "$directorul_traducerii\$proiectul_versiunii\$directorul_fragmentelor" $ce_traduc = "$directorul_traducerii\$directorul_versiunii\$fisierul_fara_extensie.po" $ce_compilez = "$directorul_compilarii\$fisierul_fara_extensie.po" @@ -62,3 +62,4 @@ else } Set-ExecutionPolicy Restricted + diff --git a/tutorial/appendix.po b/tutorial/appendix.po index 51c7516..b56fdde 100644 --- a/tutorial/appendix.po +++ b/tutorial/appendix.po @@ -1,18 +1,18 @@ -# SOME DESCRIPTIVE TITLE. +# ANEXA. # Copyright (C) 2001-2025, Python Software Foundation # This file is distributed under the same license as the Python package. -# FIRST AUTHOR , 2025. +# Octavian Mustafa , 2025. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.13\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-04 13:08+0200\n" +"POT-Creation-Date: 2025-06-17 17:56+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: ro\n" -"Language-Team: ro \n" +"Language-Team: ro \n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100" " < 20)) ? 1 : 2);\n" "MIME-Version: 1.0\n" @@ -22,11 +22,11 @@ msgstr "" #: ../../tutorial/appendix.rst:5 msgid "Appendix" -msgstr "" +msgstr "Anexă" #: ../../tutorial/appendix.rst:11 msgid "Interactive Mode" -msgstr "" +msgstr "Modul interactiv" #: ../../tutorial/appendix.rst:13 msgid "" @@ -34,6 +34,11 @@ msgid "" "basic interpreter is supported on all platforms with minimal line control" " capabilities." msgstr "" +"Sunt disponibile două versiuni ale *buclei* interactive :term:`REPL` " +"(Citește-Evaluează-Afișează-Reia). Dintre ele, modalitatea clasică de " +"utilizare a interpretorului (de Python în terminal) este suportată de " +"toate platformele moderne de calcul, doar că dispune de capacități " +"minimale de control al elementelor introduse în linia de comandă." #: ../../tutorial/appendix.rst:17 msgid "" @@ -47,6 +52,21 @@ msgid "" "enters \"paste mode\", which makes pasting larger blocks of code easier. " "Press :kbd:`F3` to return to the regular prompt." msgstr "" +"Însă, atât în Windows cât și în sistemele de operare de tip Unix cu suport " +"pentru :mod:`curses`, ne va fi pus la dispoziție, în mod predefinit, un " +"interpretor interactiv nou. El dispune de colorarea itemilor (în linia de " +"comandă), de editare multi-rând, de substituții în istoric, respectiv de " +"modul *lipire* (de la englezescul, ca jargon informatic, *paste*). Pentru " +"a dezafecta colorarea, găsiți detalii în :ref:`using-on-controlling-color`. " +"Tastele *funcții* (tastele F: se accesează apăsând simultan :kbd:`Fn` și " +":kbd:`F_număr`) vă vor oferi un plus de funcționalitate. Astfel, :kbd:`F1` " +"activează documentația interactivă de sprijin :mod:`pydoc`. :kbd:`F2` vă " +"permite să parcurgeți istoricul liniei de comandă fără afișarea " +"rezultatelor (execuției de comenzi) și nici a prompturilor :term:`>>>`, " +"respectiv :term:`...`. Cu :kbd:`F3` se intră în \"modul lipire\", ceea ce " +"va ușura lipirea unor blocuri (mai) consistente de cod. Pentru a ieși din " +"acest mod (și a vă înapoia la promptul principal), apăsați încă o dată pe " +"tasta (:kbd:`Fn` + ) :kbd:`F3`." #: ../../tutorial/appendix.rst:28 msgid "" @@ -54,16 +74,22 @@ msgid "" ":kbd:`exit` or :kbd:`quit`. Adding call parentheses after those commands " "is not required." msgstr "" +"Atunci când utilizați noul interpretor de comenzi interactiv, pentru a ieși " +"din el trebuie să tastați fie :kbd:`exit` fie :kbd:`quit`. Adăugarea de " +"paranteze (ca la operatorul de apel) este opțională." #: ../../tutorial/appendix.rst:32 msgid "" "If the new interactive shell is not desired, it can be disabled via the " ":envvar:`PYTHON_BASIC_REPL` environment variable." msgstr "" +"Dacă nu vă interesează acest interpretor de comenzi interactiv, atunci îl " +"puteți dezafecta cu ajutorul variabilei de mediu " +":envvar:`PYTHON_BASIC_REPL`." #: ../../tutorial/appendix.rst:38 msgid "Error Handling" -msgstr "" +msgstr "Tratarea erorilor" #: ../../tutorial/appendix.rst:40 msgid "" @@ -78,6 +104,20 @@ msgid "" "error stream; normal output from executed commands is written to standard" " output." msgstr "" +"Când survine o eroare, interpretorul va afișa atât un *mesaj de eroare* " +"(corespunzător) cât și conținutul *stivei de apeluri* (de la " +"englezescul, ca jargon informatic, *stack (back)trace*). Dacă vă aflați în " +"modul interactiv, atunci interpretorul revine la promptul principal; în " +"caz că programul provine dintr-un fișier, terminarea execuției se va " +"realiza cu un *cod de ieșire* nenul, aceasta după ce a fost afișată stiva " +"de apeluri. (Excepțiile tratate printr-o clauză :keyword:`except` dintr-o " +"instrucțiune :keyword:`try` nu vor fi considerate, în acest context, drept " +"erori.) Anumite erori sunt necondiționat fatale, drept pentru care ele vor " +"cauza ieșirea din execuție cu un cod de ieșire nenul; printre ele se numără " +"inconsistențele interne ale codului, respectiv anumite situații în care " +"se epuizează spațiul alocat în memorie. Toate mesajele de eroare se scriu " +"în *fluxul de eroare* (ori *canalul de eroare*) standard; încheierea " +"corectă a execuției unei comenzi se scrie în *fluxul de ieșire* standard." #: ../../tutorial/appendix.rst:50 msgid "" @@ -87,20 +127,31 @@ msgid "" "is executing raises the :exc:`KeyboardInterrupt` exception, which may be " "handled by a :keyword:`try` statement." msgstr "" +"Tastând *caracterul de întrerupere* (de obicei, :kbd:`Control-C` ori " +":kbd:`Delete`) a execuției, fie la promptul primar fie la cel secundar, " +"vom produce oprirea introducerii de caractere de la tastatură și revenirea " +"la promptul primar. [#]_ Dacă tastăm caracterul de întrerupere în timp ce " +"se derulează vreo execuție de comandă, atunci va fi lansată o excepție " +":exc:`KeyboardInterrupt`, a cărei interceptare poate fi proiectată, de " +"dumneavoastră înșivă, cu ajutorul unei instrucțiuni :keyword:`try`." #: ../../tutorial/appendix.rst:60 msgid "Executable Python Scripts" -msgstr "" +msgstr "Scripturi Python executabile" #: ../../tutorial/appendix.rst:62 msgid "" "On BSD'ish Unix systems, Python scripts can be made directly executable, " "like shell scripts, by putting the line ::" msgstr "" +"În sistemele Unix de tip BSD, scripturile Python pot fi transformate în " +"scripturi executabile direct, aidoma scripturilor interpretorului de " +"comenzi activ în sesiunea de terminal, prin inserarea liniei de " +"cod ::" #: ../../tutorial/appendix.rst:65 msgid "#!/usr/bin/env python3" -msgstr "" +msgstr "#!/usr/bin/env python3" #: ../../tutorial/appendix.rst:67 msgid "" @@ -111,16 +162,30 @@ msgid "" " Windows (``'\\r\\n'``) line ending. Note that the hash, or pound, " "character, ``'#'``, is used to start a comment in Python." msgstr "" +"chiar la începutul scriptului, respectiv adăugând permisiunilor " +"fișierului în care ați introdus scriptul și permisiunea ca acesta să " +"poată fi executat (ceea ce înseamnă a-i atribui fișierului un *mod " +"executabil*). Evident, am presupus că variabila de mediu :envvar:`PATH` " +"din contul dumneavoastră de utilizator conține (și) calea de acces către " +"interpretor. Este necesar ca simbolul bi-semn ``#!`` să fie așezat chiar " +"la începutul fișierului. Pe anumite platforme, primul rând trebuie să se " +"termine cu un caracter de încheiere de rând în stil Unix (adică, " +"``'\\n'``) și nu cu cele două caractere (invizibile) care desemnează, în " +"Windows, sfârșitul unui rând (``'\\r\\n'``). Nu uitați că *diezul*, " +"denumit, în jargon informatic, caracter *hash*, ``'#'``, este întrebuințat " +"în Python la începerea unui comentariu (de un rând)." #: ../../tutorial/appendix.rst:74 msgid "" "The script can be given an executable mode, or permission, using the " ":program:`chmod` command." msgstr "" +"Pentru ca un script să primească un *mod executabil*, adică pentru a i " +"se da *permisiunea* de a fi executat, vom folosi comanda :program:`chmod`." #: ../../tutorial/appendix.rst:77 msgid "$ chmod +x myscript.py" -msgstr "" +msgstr "$ chmod +x scriptul_meu.py" #: ../../tutorial/appendix.rst:81 msgid "" @@ -130,10 +195,16 @@ msgid "" "script. The extension can also be ``.pyw``, in that case, the console " "window that normally appears is suppressed." msgstr "" +"În sistemele Windows nu există acest \"mod executabil\". Instalatorul de " +"Python va realiza automat asocierea fișierelor ``.py`` cu ``python.exe``, " +"așa că, printr-un clic dublu pe un (simbol grafic al unui) fișier Python, " +"acesta va rula ca script. Dacă facem uz de extensia ``.pyw`` (în locul lui " +"``.py``), atunci fereastra terminalului, care apare la orice execuție de " +"script, va fi suprimată." #: ../../tutorial/appendix.rst:91 msgid "The Interactive Startup File" -msgstr "" +msgstr "Fișierul de pornire pentru sesiunea interactivă" #: ../../tutorial/appendix.rst:93 msgid "" @@ -144,6 +215,14 @@ msgid "" "commands. This is similar to the :file:`.profile` feature of the Unix " "shells." msgstr "" +"Atunci când utilizați Python-ul în modul interactiv, este convenabil să " +"aveți la îndemână un set de comenzi tipice, care să fie executate ori de " +"câte ori porniți interpretorul. Puteți realiza așa ceva atribuindu-i " +"unei variabile de mediu cu numele :envvar:`PYTHONSTARTUP` drept valoare " +"numele fișierului în care ați introdus setul respectiv de comenzi. Un " +"atare procedeu seamănă cu cel datorită căruia preparați conținutul " +"fișierului de configurare (la nivel de cont de utilizator) " +":file:`.profile` al interpretoarelor de comenzi din sistemele Unix." #: ../../tutorial/appendix.rst:99 msgid "" @@ -155,6 +234,18 @@ msgid "" "used without qualification in the interactive session. You can also " "change the prompts ``sys.ps1`` and ``sys.ps2`` in this file." msgstr "" +"Fișierul (de pornire; de la englezescul, ca jargon informatic, " +"*startup file*) va fi citit doar când deschideți o sesiune de lucru " +"interactiv, nu și atunci când Python-ul își citește comenzile dintr-un " +"fișier, și nici atunci când :file:`/dev/tty` este sursa explicită a " +"comenzilor (`fișier " +"`_ care, altminteri, " +"se comportă precum o sesiune interactivă). Execuția comenzilor din fișier " +"va avea loc în același spațiu de nume unde se execută comenzile date " +"interactiv, deci obiectele definite ori importurile făcute de comenzile " +"din fișier vor putea fi utilizate fără *nume calificate* în timpul " +"sesiunii interactive. De asemeni, puteți schimba promptul principal " +" ``sys.ps1`` și promptul secundar ``sys.ps2`` în acest fișier de pornire." #: ../../tutorial/appendix.rst:107 msgid "" @@ -164,6 +255,13 @@ msgid "" "exec(open('.pythonrc.py').read())``. If you want to use the startup file " "in a script, you must do this explicitly in the script::" msgstr "" +"Dacă doriți să fie citit și un fișier de pornire adițional, situat în " +"directorul curent, atunci puteți realiza acest lucru introducând în " +"fișierul de pornire global un fragment de cod aidoma acestuia: " +"``if os.path.isfile('.pythonrc.py'): exec(open('.pythonrc.py').read())``. " +"De asemeni, dacă sunteți interesați să întrebuințați fișierul de " +"pornire într-un script, atunci va fi nevoie să îi adăugați acelui " +"script un fragment de cod asemănător celui care urmează::" #: ../../tutorial/appendix.rst:113 msgid "" @@ -174,10 +272,16 @@ msgid "" " startup_file = fobj.read()\n" " exec(startup_file)" msgstr "" +"import os\n" +"numele_fișierului = os.environ.get('PYTHONSTARTUP')\n" +"if numele_fișierului and os.path.isfile(numele_fișierului):\n" +" with open(numele_fișierului) as obiectul_fișier:\n" +" fișierul_de_pornire = obiectul_fișier.read()\n" +" exec(fișierul_de_pornire)" #: ../../tutorial/appendix.rst:124 msgid "The Customization Modules" -msgstr "" +msgstr "Module de personalizare" #: ../../tutorial/appendix.rst:126 msgid "" @@ -186,6 +290,13 @@ msgid "" " the location of your user site-packages directory. Start Python and run" " this code::" msgstr "" +"Python-ul ne pune la dispoziție două *ancore* (de la englezescul, ca " +"jargon informatic, *hook*) pentru a-l personaliza: :index:`sitecustomize` " +"(personalizare la nivel de *sistem*, adică *(on-)site* sau *la fața " +"locului*) și :index:`usercustomize` (personalizare la nivel de " +"*utilizator*). Pentru a observa funcționarea personalizării, începem prin " +"a găsi calea de acces către directorul pachetelor disponibile *la fața " +"locului* pentru utilizator. Astfel, vom rula codul Python de mai jos::" #: ../../tutorial/appendix.rst:130 msgid "" @@ -193,6 +304,10 @@ msgid "" ">>> site.getusersitepackages()\n" "'/home/user/.local/lib/python3.x/site-packages'" msgstr "" +">>> import site\n" +">>> site.getusersitepackages()\n" +"'C:\\Users\\nume_de_utilizator\\AppData\\Roaming\\Python\\Python313" +"\\site-packages'" #: ../../tutorial/appendix.rst:134 msgid "" @@ -201,6 +316,11 @@ msgid "" "invocation of Python, unless it is started with the :option:`-s` option " "to disable the automatic import." msgstr "" +"Calea de acces fiind găsită, vom crea un fișier denumit " +":file:`usercustomize.py` în directorul respectiv și vom introduce în fișier " +"comenzile dorite. Existența acestui fișier va influența toate invocările " +"Python-ului, cu excepția situației în care pornirea se va face cu opțiunea " +":option:`-s`, opțiune care dezactivează importurile automate." #: ../../tutorial/appendix.rst:138 msgid "" @@ -209,12 +329,22 @@ msgid "" "and is imported before :index:`usercustomize`. See the documentation of " "the :mod:`site` module for more details." msgstr "" +"Ancora :index:`sitecustomize` funcționează la fel, doar că fișierul ei va " +"fi creat de către unul din administratorii sistemului dumneavoastră de " +"calcul și plasat într-unul din directoarele care fac parte din lista " +"directoarelor (globale ale) pachetelor instalate la nivel de *sistem*, însă " +"tot *la fața locului* (listă găsită cu ``site.getsitepackages()``), " +"acest fișier :file:`sitecustomize.py` fiind importat înaintea celui " +"corespunzând ancorei :index:`usercustomize`. A se vedea documentația " +"modulului :mod:`site` pentru mai multe detalii." #: ../../tutorial/appendix.rst:145 msgid "Footnotes" -msgstr "" +msgstr "Note de subsol" #: ../../tutorial/appendix.rst:146 msgid "A problem with the GNU Readline package may prevent this." msgstr "" +"O anumită defecțiune din pachetul GNU Readline ar putea să împiedice " +"aceasta." diff --git a/tutorial/controlflow.po b/tutorial/controlflow.po index f4dc067..07b9f13 100644 --- a/tutorial/controlflow.po +++ b/tutorial/controlflow.po @@ -2636,7 +2636,7 @@ msgstr "" #: ../../tutorial/controlflow.rst:1150 msgid "Footnotes" -msgstr "Note de sunsol" +msgstr "Note de subsol" #: ../../tutorial/controlflow.rst:1151 msgid "" diff --git a/tutorial/interactive.po b/tutorial/interactive.po index 73bae37..dfff2fa 100644 --- a/tutorial/interactive.po +++ b/tutorial/interactive.po @@ -1,18 +1,18 @@ -# SOME DESCRIPTIVE TITLE. +# EDITAREA INTERACTIVA A DATELOR DE INTRARE SI SUBSTITUTII IN ISTORIC. # Copyright (C) 2001-2025, Python Software Foundation # This file is distributed under the same license as the Python package. -# FIRST AUTHOR , 2025. +# Octavian Mustafa , 2025. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: Python 3.13\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-04 13:08+0200\n" +"POT-Creation-Date: 2025-06-17 17:56+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: ro\n" -"Language-Team: ro \n" +"Language-Team: ro \n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100" " < 20)) ? 1 : 2);\n" "MIME-Version: 1.0\n" @@ -23,6 +23,7 @@ msgstr "" #: ../../tutorial/interactive.rst:5 msgid "Interactive Input Editing and History Substitution" msgstr "" +"Editarea interactivă a datelor de intrare și substituții în istoric" #: ../../tutorial/interactive.rst:7 msgid "" @@ -32,10 +33,21 @@ msgid "" "Readline`_ library, which supports various styles of editing. This " "library has its own documentation which we won't duplicate here." msgstr "" +"Anumite versiuni ale interpretorului de Python ne permit *editarea* " +"comenzilor introduse (în linia de comandă), respectiv *reluarea* " +"execuției unora din itemii listei de comenzi a *istoricului* (sesiunii " +"de lucru și nu numai; calitate denumită, generic, *substituții în " +"istoric*, de la englezescul *history substitution*), aidoma celor puse " +"la dispoziția utilizatorului de către facilitățile disponibile în " +"interpretoarele de comenzi Korn și GNU Bash. Mecanismele software sunt " +"implementate pe baza bibliotecii `GNU Readline`_, în care utilizatorul " +"își poate alege stilul de editare (din setul celor acceptate). Această " +"bibliotecă are documentație proprie (bogată), pe care nu o vom reproduce " +"aici." #: ../../tutorial/interactive.rst:17 msgid "Tab Completion and History Editing" -msgstr "" +msgstr "Completări din tabulator și editarea istoricului" #: ../../tutorial/interactive.rst:19 msgid "" @@ -51,20 +63,49 @@ msgid "" "file named :file:`.python_history` in your user directory. The history " "will be available again during the next interactive interpreter session." msgstr "" +"*Completarea* numelor de variabile și de module este :ref:`activată " +"automat ` la pornirea interpretorului (de Python), " +"așa că, prin apăsarea tastei :kbd:`Tab` (tabulatorul), va fi invocată " +"funcția de completare; ea va căuta în lista numelor de instrucțiuni Python, " +"în cea a numelor de variabile locale *în viață*, respectiv în cea a numelor " +"de module accesibile. În cazul unor expresii *cu punct* precum ``șir.exe``, " +"expresia va fi evaluată până la acel ``'.'`` de final, după care îi vor fi " +"propuse utilizatorului completări folosind atributele obiectului construit " +"ca rezultat al căutărilor. Țineți seama de faptul că, dacă numele unui " +"obiect care a implementat metoda :meth:`~object.__getattr__` este parte din " +"expresia căutată, atunci se poate întâmpla să fie executat și cod din " +"aplicația la care lucrați. Configurația prestabilită (a unei instalări " +"tipice a sistemului Python) face ca istoricul activităților dumneavoastră în " +"linia de comandă să fie salvat într-un fișier intitulat " +":file:`.python_history`, fișier situat în directorul dumneavoastră de " +"utilizator. Astfel, acest istoric vă va fi disponibil la următoarea sesiune " +"de lucru interactiv cu interpretorul (de Python)." #: ../../tutorial/interactive.rst:36 msgid "Alternatives to the Interactive Interpreter" -msgstr "" +msgstr "Alternative la interpretorul interactiv" #: ../../tutorial/interactive.rst:38 msgid "" "This facility is an enormous step forward compared to earlier versions of" " the interpreter; however, some wishes are left: It would be nice if the " "proper indentation were suggested on continuation lines (the parser knows" -" if an indent token is required next). The completion mechanism might " -"use the interpreter's symbol table. A command to check (or even suggest)" -" matching parentheses, quotes, etc., would also be useful." +" if an :data:`~token.INDENT` token is required next). The completion " +"mechanism might use the interpreter's symbol table. A command to check " +"(or even suggest) matching parentheses, quotes, etc., would also be " +"useful." msgstr "" +"Această caracteristică (de a fi *interactiv* a interpretorului) constituie " +"un uriaș pas înainte față de versiunile anterioare ale interpretorului (de " +"Python); cu toate acestea, mai avem dorințe de îndeplinit: ar fi foarte " +"bine dacă ni s-ar putea indica indentări potrivite atunci când trebuie să " +"continuăm o linie de cod pe rândul următor (dat fiind că parserul știe " +"când un *simbol* (de la englezescul, ca jargon informatic, *token*) " +":data:`~token.INDENT` este cerut pentru a continua). Mecanismul de " +"completare (a numelor, șamd.) ar putea întrebuința (într-un atare scop) " +"tabela de simboluri a interpretorului. O comandă pentru verificarea (ori " +"măcar sugerarea) închiderii unei paranteze deschise, a unor ghilimele " +"șamd., ar fi, cu siguranță, de folos." #: ../../tutorial/interactive.rst:45 msgid "" @@ -74,4 +115,11 @@ msgid "" "customized and embedded into other applications. Another similar " "enhanced interactive environment is bpython_." msgstr "" +"O alternativă (la interpretorul de Python actual) este cea oferită de " +"un interpretor interactiv avansat, disponibil de destul de mult timp, " +"care se numește IPython_, interpretor capabil de completări din tabulator, " +"de explorare a obiectelor și de o administrare sofisticată a istoricului. " +"În plus, el poate fi personalizat în privința punctelor-cheie, respectiv " +"scufundat în codul altor aplicații. Asemănător lui este și mediul " +"interactiv extins intitulat bpython_."