-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathglossary.po
More file actions
3110 lines (2616 loc) · 96.3 KB
/
Copy pathglossary.po
File metadata and controls
3110 lines (2616 loc) · 96.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2001 Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2026.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python 3.14\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-04-18 10:29+0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: vi\n"
"Language-Team: vi <LL@li.org>\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.18.0\n"
#: ../../glossary.rst:5
msgid "Glossary"
msgstr ""
#: ../../glossary.rst:10
msgid "``>>>``"
msgstr ""
#: ../../glossary.rst:12
msgid ""
"The default Python prompt of the :term:`interactive` shell. Often seen "
"for code examples which can be executed interactively in the interpreter."
msgstr ""
#: ../../glossary.rst:15
msgid "``...``"
msgstr ""
#: ../../glossary.rst:17
msgid "Can refer to:"
msgstr ""
#: ../../glossary.rst:19
msgid ""
"The default Python prompt of the :term:`interactive` shell when entering "
"the code for an indented code block, when within a pair of matching left "
"and right delimiters (parentheses, square brackets, curly braces or "
"triple quotes), or after specifying a decorator."
msgstr ""
#: ../../glossary.rst:26
msgid "The three dots form of the :ref:`Ellipsis <bltin-ellipsis-object>` object."
msgstr ""
#: ../../glossary.rst:27
msgid "abstract base class"
msgstr ""
#: ../../glossary.rst:29
msgid ""
"Abstract base classes complement :term:`duck-typing` by providing a way "
"to define interfaces when other techniques like :func:`hasattr` would be "
"clumsy or subtly wrong (for example with :ref:`magic methods <special-"
"lookup>`). ABCs introduce virtual subclasses, which are classes that "
"don't inherit from a class but are still recognized by :func:`isinstance`"
" and :func:`issubclass`; see the :mod:`abc` module documentation. Python"
" comes with many built-in ABCs for data structures (in the "
":mod:`collections.abc` module), numbers (in the :mod:`numbers` module), "
"streams (in the :mod:`io` module), import finders and loaders (in the "
":mod:`importlib.abc` module). You can create your own ABCs with the "
":mod:`abc` module."
msgstr ""
#: ../../glossary.rst:40
msgid "annotate function"
msgstr ""
#: ../../glossary.rst:42
msgid ""
"A function that can be called to retrieve the :term:`annotations "
"<annotation>` of an object. This function is accessible as the "
":attr:`~object.__annotate__` attribute of functions, classes, and "
"modules. Annotate functions are a subset of :term:`evaluate functions "
"<evaluate function>`."
msgstr ""
#: ../../glossary.rst:46
msgid "annotation"
msgstr ""
#: ../../glossary.rst:48
msgid ""
"A label associated with a variable, a class attribute or a function "
"parameter or return value, used by convention as a :term:`type hint`."
msgstr ""
#: ../../glossary.rst:52
msgid ""
"Annotations of local variables cannot be accessed at runtime, but "
"annotations of global variables, class attributes, and functions can be "
"retrieved by calling :func:`annotationlib.get_annotations` on modules, "
"classes, and functions, respectively."
msgstr ""
#: ../../glossary.rst:57
msgid ""
"See :term:`variable annotation`, :term:`function annotation`, :pep:`484`,"
" :pep:`526`, and :pep:`649`, which describe this functionality. Also see "
":ref:`annotations-howto` for best practices on working with annotations."
msgstr ""
#: ../../glossary.rst:61
msgid "argument"
msgstr ""
#: ../../glossary.rst:63
msgid ""
"A value passed to a :term:`function` (or :term:`method`) when calling the"
" function. There are two kinds of argument:"
msgstr ""
#: ../../glossary.rst:66
msgid ""
":dfn:`keyword argument`: an argument preceded by an identifier (e.g. "
"``name=``) in a function call or passed as a value in a dictionary "
"preceded by ``**``. For example, ``3`` and ``5`` are both keyword "
"arguments in the following calls to :func:`complex`::"
msgstr ""
#: ../../glossary.rst:71
#, python-brace-format
msgid ""
"complex(real=3, imag=5)\n"
"complex(**{'real': 3, 'imag': 5})"
msgstr ""
#: ../../glossary.rst:74
msgid ""
":dfn:`positional argument`: an argument that is not a keyword argument. "
"Positional arguments can appear at the beginning of an argument list "
"and/or be passed as elements of an :term:`iterable` preceded by ``*``. "
"For example, ``3`` and ``5`` are both positional arguments in the "
"following calls::"
msgstr ""
#: ../../glossary.rst:80
msgid ""
"complex(3, 5)\n"
"complex(*(3, 5))"
msgstr ""
#: ../../glossary.rst:83
msgid ""
"Arguments are assigned to the named local variables in a function body. "
"See the :ref:`calls` section for the rules governing this assignment. "
"Syntactically, any expression can be used to represent an argument; the "
"evaluated value is assigned to the local variable."
msgstr ""
#: ../../glossary.rst:88
msgid ""
"See also the :term:`parameter` glossary entry, the FAQ question on "
":ref:`the difference between arguments and parameters <faq-argument-vs-"
"parameter>`, and :pep:`362`."
msgstr ""
#: ../../glossary.rst:91
msgid "asynchronous context manager"
msgstr ""
#: ../../glossary.rst:93
msgid ""
"An object which controls the environment seen in an :keyword:`async with`"
" statement by defining :meth:`~object.__aenter__` and "
":meth:`~object.__aexit__` methods. Introduced by :pep:`492`."
msgstr ""
#: ../../glossary.rst:96
msgid "asynchronous generator"
msgstr ""
#: ../../glossary.rst:98
msgid ""
"A function which returns an :term:`asynchronous generator iterator`. It "
"looks like a coroutine function defined with :keyword:`async def` except "
"that it contains :keyword:`yield` expressions for producing a series of "
"values usable in an :keyword:`async for` loop."
msgstr ""
#: ../../glossary.rst:103
msgid ""
"Usually refers to an asynchronous generator function, but may refer to an"
" *asynchronous generator iterator* in some contexts. In cases where the "
"intended meaning isn't clear, using the full terms avoids ambiguity."
msgstr ""
#: ../../glossary.rst:107
msgid ""
"An asynchronous generator function may contain :keyword:`await` "
"expressions as well as :keyword:`async for`, and :keyword:`async with` "
"statements."
msgstr ""
#: ../../glossary.rst:110
msgid "asynchronous generator iterator"
msgstr ""
#: ../../glossary.rst:112
msgid "An object created by an :term:`asynchronous generator` function."
msgstr ""
#: ../../glossary.rst:114
msgid ""
"This is an :term:`asynchronous iterator` which when called using the "
":meth:`~object.__anext__` method returns an awaitable object which will "
"execute the body of the asynchronous generator function until the next "
":keyword:`yield` expression."
msgstr ""
#: ../../glossary.rst:119
msgid ""
"Each :keyword:`yield` temporarily suspends processing, remembering the "
"execution state (including local variables and pending try-statements). "
"When the *asynchronous generator iterator* effectively resumes with "
"another awaitable returned by :meth:`~object.__anext__`, it picks up "
"where it left off. See :pep:`492` and :pep:`525`."
msgstr ""
#: ../../glossary.rst:124
msgid "asynchronous iterable"
msgstr ""
#: ../../glossary.rst:126
msgid ""
"An object, that can be used in an :keyword:`async for` statement. Must "
"return an :term:`asynchronous iterator` from its "
":meth:`~object.__aiter__` method. Introduced by :pep:`492`."
msgstr ""
#: ../../glossary.rst:129
msgid "asynchronous iterator"
msgstr ""
#: ../../glossary.rst:131
msgid ""
"An object that implements the :meth:`~object.__aiter__` and "
":meth:`~object.__anext__` methods. :meth:`~object.__anext__` must return"
" an :term:`awaitable` object. :keyword:`async for` resolves the "
"awaitables returned by an asynchronous iterator's "
":meth:`~object.__anext__` method until it raises a "
":exc:`StopAsyncIteration` exception. Introduced by :pep:`492`."
msgstr ""
#: ../../glossary.rst:136
msgid "atomic operation"
msgstr ""
#: ../../glossary.rst:138
msgid ""
"An operation that appears to execute as a single, indivisible step: no "
"other thread can observe it half-done, and its effects become visible all"
" at once. Python does not guarantee that high-level statements are "
"atomic (for example, ``x += 1`` performs multiple bytecode operations and"
" is not atomic). Atomicity is only guaranteed where explicitly "
"documented. See also :term:`race condition` and :term:`data race`."
msgstr ""
#: ../../glossary.rst:144
msgid "attached thread state"
msgstr ""
#: ../../glossary.rst:147
msgid "A :term:`thread state` that is active for the current OS thread."
msgstr ""
#: ../../glossary.rst:149
msgid ""
"When a :term:`thread state` is attached, the OS thread has access to the "
"full Python C API and can safely invoke the bytecode interpreter."
msgstr ""
#: ../../glossary.rst:153
msgid ""
"Unless a function explicitly notes otherwise, attempting to call the C "
"API without an attached thread state will result in a fatal error or "
"undefined behavior. A thread state can be attached and detached "
"explicitly by the user through the C API, or implicitly by the runtime, "
"including during blocking C calls and by the bytecode interpreter in "
"between calls."
msgstr ""
#: ../../glossary.rst:160
msgid ""
"On most builds of Python, having an attached thread state implies that "
"the caller holds the :term:`GIL` for the current interpreter, so only one"
" OS thread can have an attached thread state at a given moment. In :term"
":`free-threaded builds <free-threaded build>` of Python, threads can "
"concurrently hold an attached thread state, allowing for true parallelism"
" of the bytecode interpreter."
msgstr ""
#: ../../glossary.rst:166
msgid "attribute"
msgstr ""
#: ../../glossary.rst:168
msgid ""
"A value associated with an object which is usually referenced by name "
"using dotted expressions. For example, if an object *o* has an attribute "
"*a* it would be referenced as *o.a*."
msgstr ""
#: ../../glossary.rst:173
msgid ""
"It is possible to give an object an attribute whose name is not an "
"identifier as defined by :ref:`identifiers`, for example using "
":func:`setattr`, if the object allows it. Such an attribute will not be "
"accessible using a dotted expression, and would instead need to be "
"retrieved with :func:`getattr`."
msgstr ""
#: ../../glossary.rst:178
msgid "awaitable"
msgstr ""
#: ../../glossary.rst:180
msgid ""
"An object that can be used in an :keyword:`await` expression. Can be a "
":term:`coroutine` or an object with an :meth:`~object.__await__` method. "
"See also :pep:`492`."
msgstr ""
#: ../../glossary.rst:183
msgid "BDFL"
msgstr ""
#: ../../glossary.rst:185
msgid ""
"Benevolent Dictator For Life, a.k.a. `Guido van Rossum "
"<https://gvanrossum.github.io/>`_, Python's creator."
msgstr ""
#: ../../glossary.rst:187
msgid "binary file"
msgstr ""
#: ../../glossary.rst:189
msgid ""
"A :term:`file object` able to read and write :term:`bytes-like objects "
"<bytes-like object>`. Examples of binary files are files opened in binary"
" mode (``'rb'``, ``'wb'`` or ``'rb+'``), :data:`sys.stdin.buffer "
"<sys.stdin>`, :data:`sys.stdout.buffer <sys.stdout>`, and instances of "
":class:`io.BytesIO` and :class:`gzip.GzipFile`."
msgstr ""
#: ../../glossary.rst:196
msgid ""
"See also :term:`text file` for a file object able to read and write "
":class:`str` objects."
msgstr ""
#: ../../glossary.rst:198
msgid "borrowed reference"
msgstr ""
#: ../../glossary.rst:200
msgid ""
"In Python's C API, a borrowed reference is a reference to an object, "
"where the code using the object does not own the reference. It becomes a "
"dangling pointer if the object is destroyed. For example, a garbage "
"collection can remove the last :term:`strong reference` to the object and"
" so destroy it."
msgstr ""
#: ../../glossary.rst:206
msgid ""
"Calling :c:func:`Py_INCREF` on the :term:`borrowed reference` is "
"recommended to convert it to a :term:`strong reference` in-place, except "
"when the object cannot be destroyed before the last usage of the borrowed"
" reference. The :c:func:`Py_NewRef` function can be used to create a new "
":term:`strong reference`."
msgstr ""
#: ../../glossary.rst:211
msgid "bytes-like object"
msgstr ""
#: ../../glossary.rst:213
msgid ""
"An object that supports the :ref:`bufferobjects` and can export a "
"C-:term:`contiguous` buffer. This includes all :class:`bytes`, "
":class:`bytearray`, and :class:`array.array` objects, as well as many "
"common :class:`memoryview` objects. Bytes-like objects can be used for "
"various operations that work with binary data; these include compression,"
" saving to a binary file, and sending over a socket."
msgstr ""
#: ../../glossary.rst:220
msgid ""
"Some operations need the binary data to be mutable. The documentation "
"often refers to these as \"read-write bytes-like objects\". Example "
"mutable buffer objects include :class:`bytearray` and a "
":class:`memoryview` of a :class:`bytearray`. Other operations require the"
" binary data to be stored in immutable objects (\"read-only bytes-like "
"objects\"); examples of these include :class:`bytes` and a "
":class:`memoryview` of a :class:`bytes` object."
msgstr ""
#: ../../glossary.rst:228
msgid "bytecode"
msgstr ""
#: ../../glossary.rst:230
msgid ""
"Python source code is compiled into bytecode, the internal representation"
" of a Python program in the CPython interpreter. The bytecode is also "
"cached in ``.pyc`` files so that executing the same file is faster the "
"second time (recompilation from source to bytecode can be avoided). This"
" \"intermediate language\" is said to run on a :term:`virtual machine` "
"that executes the machine code corresponding to each bytecode. Do note "
"that bytecodes are not expected to work between different Python virtual "
"machines, nor to be stable between Python releases."
msgstr ""
#: ../../glossary.rst:240
msgid ""
"A list of bytecode instructions can be found in the documentation for "
":ref:`the dis module <bytecodes>`."
msgstr ""
#: ../../glossary.rst:242
msgid "callable"
msgstr ""
#: ../../glossary.rst:244
msgid ""
"A callable is an object that can be called, possibly with a set of "
"arguments (see :term:`argument`), with the following syntax::"
msgstr ""
#: ../../glossary.rst:247
msgid "callable(argument1, argument2, argumentN)"
msgstr ""
#: ../../glossary.rst:249
msgid ""
"A :term:`function`, and by extension a :term:`method`, is a callable. An "
"instance of a class that implements the :meth:`~object.__call__` method "
"is also a callable."
msgstr ""
#: ../../glossary.rst:252
msgid "callback"
msgstr ""
#: ../../glossary.rst:254
msgid ""
"A subroutine function which is passed as an argument to be executed at "
"some point in the future."
msgstr ""
#: ../../glossary.rst:256
msgid "class"
msgstr ""
#: ../../glossary.rst:258
msgid ""
"A template for creating user-defined objects. Class definitions normally "
"contain method definitions which operate on instances of the class."
msgstr ""
#: ../../glossary.rst:261
msgid "class variable"
msgstr ""
#: ../../glossary.rst:263
msgid ""
"A variable defined in a class and intended to be modified only at class "
"level (i.e., not in an instance of the class)."
msgstr ""
#: ../../glossary.rst:265
msgid "closure variable"
msgstr ""
#: ../../glossary.rst:267
msgid ""
"A :term:`free variable` referenced from a :term:`nested scope` that is "
"defined in an outer scope rather than being resolved at runtime from the "
"globals or builtin namespaces. May be explicitly defined with the "
":keyword:`nonlocal` keyword to allow write access, or implicitly defined "
"if the variable is only being read."
msgstr ""
#: ../../glossary.rst:272
msgid ""
"For example, in the ``inner`` function in the following code, both ``x`` "
"and ``print`` are :term:`free variables <free variable>`, but only ``x`` "
"is a *closure variable*::"
msgstr ""
#: ../../glossary.rst:275
msgid ""
"def outer():\n"
" x = 0\n"
" def inner():\n"
" nonlocal x\n"
" x += 1\n"
" print(x)\n"
" return inner"
msgstr ""
#: ../../glossary.rst:283
msgid ""
"Due to the :attr:`codeobject.co_freevars` attribute (which, despite its "
"name, only includes the names of closure variables rather than listing "
"all referenced free variables), the more general :term:`free variable` "
"term is sometimes used even when the intended meaning is to refer "
"specifically to closure variables."
msgstr ""
#: ../../glossary.rst:287
msgid "complex number"
msgstr ""
#: ../../glossary.rst:289
msgid ""
"An extension of the familiar real number system in which all numbers are "
"expressed as a sum of a real part and an imaginary part. Imaginary "
"numbers are real multiples of the imaginary unit (the square root of "
"``-1``), often written ``i`` in mathematics or ``j`` in engineering. "
"Python has built-in support for complex numbers, which are written with "
"this latter notation; the imaginary part is written with a ``j`` suffix, "
"e.g., ``3+1j``. To get access to complex equivalents of the :mod:`math` "
"module, use :mod:`cmath`. Use of complex numbers is a fairly advanced "
"mathematical feature. If you're not aware of a need for them, it's "
"almost certain you can safely ignore them."
msgstr ""
#: ../../glossary.rst:299
msgid "concurrency"
msgstr ""
#: ../../glossary.rst:301
msgid ""
"The ability of a computer program to perform multiple tasks at the same "
"time. Python provides libraries for writing programs that make use of "
"different forms of concurrency. :mod:`asyncio` is a library for dealing "
"with asynchronous tasks and coroutines. :mod:`threading` provides access"
" to operating system threads and :mod:`multiprocessing` to operating "
"system processes. Multi-core processors can execute threads and processes"
" on different CPU cores at the same time (see :term:`parallelism`)."
msgstr ""
#: ../../glossary.rst:309
msgid "concurrent modification"
msgstr ""
#: ../../glossary.rst:311
msgid ""
"When multiple threads modify shared data at the same time. Concurrent "
"modification without proper synchronization can cause :term:`race "
"conditions <race condition>`, and might also trigger a :term:`data race "
"<data race>`, data corruption, or both."
msgstr ""
#: ../../glossary.rst:315
msgid "context"
msgstr ""
#: ../../glossary.rst:317
msgid ""
"This term has different meanings depending on where and how it is used. "
"Some common meanings:"
msgstr ""
#: ../../glossary.rst:320
msgid ""
"The temporary state or environment established by a :term:`context "
"manager` via a :keyword:`with` statement."
msgstr ""
#: ../../glossary.rst:322
msgid ""
"The collection of keyvalue bindings associated with a particular "
":class:`contextvars.Context` object and accessed via "
":class:`~contextvars.ContextVar` objects. Also see :term:`context "
"variable`."
msgstr ""
#: ../../glossary.rst:326
msgid "A :class:`contextvars.Context` object. Also see :term:`current context`."
msgstr ""
#: ../../glossary.rst:328
msgid "context management protocol"
msgstr ""
#: ../../glossary.rst:330
msgid ""
"The :meth:`~object.__enter__` and :meth:`~object.__exit__` methods called"
" by the :keyword:`with` statement. See :pep:`343`."
msgstr ""
#: ../../glossary.rst:332
msgid "context manager"
msgstr ""
#: ../../glossary.rst:334
msgid ""
"An object which implements the :term:`context management protocol` and "
"controls the environment seen in a :keyword:`with` statement. See "
":pep:`343`."
msgstr ""
#: ../../glossary.rst:337
msgid "context variable"
msgstr ""
#: ../../glossary.rst:339
msgid ""
"A variable whose value depends on which context is the :term:`current "
"context`. Values are accessed via :class:`contextvars.ContextVar` "
"objects. Context variables are primarily used to isolate state between "
"concurrent asynchronous tasks."
msgstr ""
#: ../../glossary.rst:343
msgid "contiguous"
msgstr ""
#: ../../glossary.rst:347
msgid ""
"A buffer is considered contiguous exactly if it is either *C-contiguous* "
"or *Fortran contiguous*. 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."
msgstr ""
#: ../../glossary.rst:355
msgid "coroutine"
msgstr ""
#: ../../glossary.rst:357
msgid ""
"Coroutines are a more generalized form of subroutines. Subroutines are "
"entered at one point and exited at another point. Coroutines can be "
"entered, exited, and resumed at many different points. They can be "
"implemented with the :keyword:`async def` statement. See also "
":pep:`492`."
msgstr ""
#: ../../glossary.rst:362
msgid "coroutine function"
msgstr ""
#: ../../glossary.rst:364
msgid ""
"A function which returns a :term:`coroutine` object. A coroutine "
"function may be defined with the :keyword:`async def` statement, and may "
"contain :keyword:`await`, :keyword:`async for`, and :keyword:`async with`"
" keywords. These were introduced by :pep:`492`."
msgstr ""
#: ../../glossary.rst:369
msgid "CPython"
msgstr ""
#: ../../glossary.rst:371
msgid ""
"The canonical implementation of the Python programming language, as "
"distributed on `python.org <https://www.python.org>`_. The term "
"\"CPython\" is used when necessary to distinguish this implementation "
"from others such as Jython or IronPython."
msgstr ""
#: ../../glossary.rst:375
msgid "current context"
msgstr ""
#: ../../glossary.rst:377
msgid ""
"The :term:`context` (:class:`contextvars.Context` object) that is "
"currently used by :class:`~contextvars.ContextVar` objects to access (get"
" or set) the values of :term:`context variables <context variable>`. "
"Each thread has its own current context. Frameworks for executing "
"asynchronous tasks (see :mod:`asyncio`) associate each task with a "
"context which becomes the current context whenever the task starts or "
"resumes execution."
msgstr ""
#: ../../glossary.rst:383
msgid "cyclic isolate"
msgstr ""
#: ../../glossary.rst:385
msgid ""
"A subgroup of one or more objects that reference each other in a "
"reference cycle, but are not referenced by objects outside the group. "
"The goal of the :term:`cyclic garbage collector <garbage collection>` is "
"to identify these groups and break the reference cycles so that the "
"memory can be reclaimed."
msgstr ""
#: ../../glossary.rst:389
msgid "data race"
msgstr ""
#: ../../glossary.rst:391
msgid ""
"A situation where multiple threads access the same memory location "
"concurrently, at least one of the accesses is a write, and the threads do"
" not use any synchronization to control their access. Data races lead to"
" :term:`non-deterministic` behavior and can cause data corruption. Proper"
" use of :term:`locks <lock>` and other :term:`synchronization primitives "
"<synchronization primitive>` prevents data races. Note that data races "
"can only happen in native code, but that :term:`native code` might be "
"exposed in a Python API. See also :term:`race condition` and :term"
":`thread-safe`."
msgstr ""
#: ../../glossary.rst:400
msgid "deadlock"
msgstr ""
#: ../../glossary.rst:402
msgid ""
"A situation in which two or more tasks (threads, processes, or "
"coroutines) wait indefinitely for each other to release resources or "
"complete actions, preventing any from making progress. For example, if "
"thread A holds lock 1 and waits for lock 2, while thread B holds lock 2 "
"and waits for lock 1, both threads will wait indefinitely. In Python "
"this often arises from acquiring multiple locks in conflicting orders or "
"from circular join/await dependencies. Deadlocks can be avoided by "
"always acquiring multiple :term:`locks <lock>` in a consistent order. "
"See also :term:`lock` and :term:`reentrant`."
msgstr ""
#: ../../glossary.rst:411
msgid "decorator"
msgstr ""
#: ../../glossary.rst:413
msgid ""
"A function returning another function, usually applied as a function "
"transformation using the ``@wrapper`` syntax. Common examples for "
"decorators are :func:`classmethod` and :func:`staticmethod`."
msgstr ""
#: ../../glossary.rst:417
msgid ""
"The decorator syntax is merely syntactic sugar, the following two "
"function definitions are semantically equivalent::"
msgstr ""
#: ../../glossary.rst:420
msgid ""
"def f(arg):\n"
" ...\n"
"f = staticmethod(f)\n"
"\n"
"@staticmethod\n"
"def f(arg):\n"
" ..."
msgstr ""
#: ../../glossary.rst:428
msgid ""
"The same concept exists for classes, but is less commonly used there. "
"See the documentation for :ref:`function definitions <function>` and "
":ref:`class definitions <class>` for more about decorators."
msgstr ""
#: ../../glossary.rst:431
msgid "descriptor"
msgstr ""
#: ../../glossary.rst:433
msgid ""
"Any object which defines the methods :meth:`~object.__get__`, "
":meth:`~object.__set__`, or :meth:`~object.__delete__`. When a class "
"attribute is a descriptor, its special binding behavior is triggered upon"
" attribute lookup. Normally, using *a.b* to get, set or delete an "
"attribute looks up the object named *b* in the class dictionary for *a*, "
"but if *b* is a descriptor, the respective descriptor method gets called."
" Understanding descriptors is a key to a deep understanding of Python "
"because they are the basis for many features including functions, "
"methods, properties, class methods, static methods, and reference to "
"super classes."
msgstr ""
#: ../../glossary.rst:444
msgid ""
"For more information about descriptors' methods, see :ref:`descriptors` "
"or the :ref:`Descriptor How To Guide <descriptorhowto>`."
msgstr ""
#: ../../glossary.rst:446
msgid "dictionary"
msgstr ""
#: ../../glossary.rst:448
msgid ""
"An associative array, where arbitrary keys are mapped to values. The "
"keys can be any object with :meth:`~object.__hash__` and "
":meth:`~object.__eq__` methods. Called a hash in Perl."
msgstr ""
#: ../../glossary.rst:452
msgid "dictionary comprehension"
msgstr ""
#: ../../glossary.rst:454
#, python-brace-format
msgid ""
"A compact way to process all or part of the elements in an iterable and "
"return a dictionary with the results. ``results = {n: n ** 2 for n in "
"range(10)}`` generates a dictionary containing key ``n`` mapped to value "
"``n ** 2``. See :ref:`comprehensions`."
msgstr ""
#: ../../glossary.rst:458
msgid "dictionary view"
msgstr ""
#: ../../glossary.rst:460
msgid ""
"The objects returned from :meth:`dict.keys`, :meth:`dict.values`, and "
":meth:`dict.items` are called dictionary views. They provide a dynamic "
"view on the dictionary’s entries, which means that when the dictionary "
"changes, the view reflects these changes. To force the dictionary view to"
" become a full list use ``list(dictview)``. See :ref:`dict-views`."
msgstr ""
#: ../../glossary.rst:466
msgid "docstring"
msgstr ""
#: ../../glossary.rst:468
msgid ""
"A string literal which appears as the first expression in a class, "
"function or module. While ignored when the suite is executed, it is "
"recognized by the compiler and put into the :attr:`~definition.__doc__` "
"attribute of the enclosing class, function or module. Since it is "
"available via introspection, it is the canonical place for documentation "
"of the object."
msgstr ""
#: ../../glossary.rst:474
msgid "duck-typing"
msgstr ""
#: ../../glossary.rst:476
msgid ""
"A programming style which does not look at an object's type to determine "
"if it has the right interface; instead, the method or attribute is simply"
" called or used (\"If it looks like a duck and quacks like a duck, it "
"must be a duck.\") By emphasizing interfaces rather than specific types,"
" well-designed code improves its flexibility by allowing polymorphic "
"substitution. Duck-typing avoids tests using :func:`type` or "
":func:`isinstance`. (Note, however, that duck-typing can be complemented"
" with :term:`abstract base classes <abstract base class>`.) Instead, it "
"typically employs :func:`hasattr` tests or :term:`EAFP` programming."
msgstr ""
#: ../../glossary.rst:485
msgid "dunder"
msgstr ""
#: ../../glossary.rst:487
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:490
msgid "EAFP"
msgstr ""
#: ../../glossary.rst:492
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 "
"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."
msgstr ""
#: ../../glossary.rst:498
msgid "evaluate function"
msgstr ""
#: ../../glossary.rst:500
msgid ""
"A function that can be called to evaluate a lazily evaluated attribute of"
" an object, such as the value of type aliases created with the "
":keyword:`type` statement."
msgstr ""
#: ../../glossary.rst:503
msgid "expression"
msgstr ""
#: ../../glossary.rst:505
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, "
"names, attribute access, operators or function calls which all return a "
"value. In contrast to many other languages, not all language constructs "
"are expressions. There are also :term:`statement`\\s which cannot be "
"used as expressions, such as :keyword:`while`. Assignments are also "
"statements, not expressions."
msgstr ""
#: ../../glossary.rst:512
msgid "extension module"
msgstr ""
#: ../../glossary.rst:514
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:516
msgid "f-string"
msgstr ""
#: ../../glossary.rst:517
msgid "f-strings"
msgstr ""
#: ../../glossary.rst:519
msgid ""
"String literals prefixed with ``f`` or ``F`` are commonly called "
"\"f-strings\" which is short for :ref:`formatted string literals "
"<f-strings>`. See also :pep:`498`."
msgstr ""
#: ../../glossary.rst:522
msgid "file object"
msgstr ""
#: ../../glossary.rst:524
msgid ""
"An object exposing a file-oriented API (with methods such as "
":meth:`!read` or :meth:`!write`) to an underlying resource. Depending on"
" the way it was created, a file object can mediate access to a real on-"
"disk file or to another type of storage or communication device (for "
"example standard input/output, in-memory buffers, sockets, pipes, etc.)."
" File objects are also called :dfn:`file-like objects` or "
":dfn:`streams`."
msgstr ""
#: ../../glossary.rst:532
msgid ""
"There are actually three categories of file objects: raw :term:`binary "
"files <binary file>`, buffered :term:`binary files <binary file>` and "
":term:`text files <text file>`. Their interfaces are defined in the "
":mod:`io` module. The canonical way to create a file object is by using "
"the :func:`open` function."
msgstr ""
#: ../../glossary.rst:537
msgid "file-like object"
msgstr ""
#: ../../glossary.rst:539
msgid "A synonym for :term:`file object`."
msgstr ""
#: ../../glossary.rst:540
msgid "filesystem encoding and error handler"
msgstr ""
#: ../../glossary.rst:542
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:545
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:549
msgid ""
"The :func:`sys.getfilesystemencoding` and "
":func:`sys.getfilesystemencodeerrors` functions can be used to get the "
"filesystem encoding and error handler."
msgstr ""