Repository navigation
Expand file tree
/
Copy pathatexit.po
More file actions
193 lines (170 loc) · 6.2 KB
/
Copy pathatexit.po
File metadata and controls
193 lines (170 loc) · 6.2 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
# 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>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Python 3.14\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-09-28 03:11+0000\n"
"PO-Revision-Date: 2026-05-08 17:17+0000\n"
"Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../../library/atexit.rst:2
msgid ":mod:`!atexit` --- Exit handlers"
msgstr ""
#: ../../library/atexit.rst:12
msgid ""
"The :mod:`!atexit` module defines functions to register and unregister :dfn:"
"`exit handlers`: functions that are automatically executed \"at exit\", that "
"is, upon normal program termination (for instance, if :func:`sys.exit` is "
"called or the main module's execution completes) or, more generally, upon :"
"term:`interpreter shutdown`."
msgstr ""
#: ../../library/atexit.rst:18
msgid ""
"At exit, all registered exit handlers are called in the *reverse* order in "
"which they were registered. If you register ``A``, ``B``, and ``C``, at "
"interpreter shutdown time they will be run in the order ``C``, ``B``, ``A``. "
"The assumption is that lower level modules will normally be imported before "
"higher level modules and thus must be cleaned up later."
msgstr ""
#: ../../library/atexit.rst:25
msgid ""
"If an exception is raised during execution of an exit handler, a traceback "
"is printed (unless :exc:`SystemExit` is raised) and the exception "
"information is saved. After all exit handlers have had a chance to run, the "
"last exception to be raised is re-raised."
msgstr ""
#: ../../library/atexit.rst:30
msgid ""
"In programs that use multiple interpreters, each interpreter has its own "
"stack of exit handlers, which are executed when the interpreter shuts down "
"(for example, with :meth:`concurrent.interpreters.Interpreter.close` or the "
"C API :c:func:`Py_EndInterpreter`). Registration functions in this module "
"only affect the interpreter they are called from."
msgstr ""
#: ../../library/atexit.rst:37
msgid ""
"**Note:** Exit handlers are not called when the program is killed by a "
"signal not handled by Python, when a Python fatal internal error is "
"detected, or when :func:`os._exit` is called."
msgstr ""
#: ../../library/atexit.rst:41
msgid ""
"**Note:** The effect of registering or unregistering functions from within a "
"cleanup function is undefined."
msgstr ""
#: ../../library/atexit.rst:45
msgid ""
"When writing exit handlers, especially in C API extensions, keep in mind "
"that other exit handlers may still run arbitrary Python code after you clean "
"up. Such code should succeed or fail with an exception, rather than crash."
msgstr ""
#: ../../library/atexit.rst:50
msgid ""
"Attempts to start a new thread or :func:`os.fork` a new process in an exit "
"handler now leads to :exc:`RuntimeError`. Previously, this could cause race "
"conditions between the main Python runtime thread freeing thread states "
"while internal :mod:`threading` routines or the new process try to use that "
"state, which could lead to crashes rather than clean shutdown."
msgstr ""
#: ../../library/atexit.rst:58
msgid ""
"When used with subinterpreters, registered functions are local to the "
"interpreter they were registered in."
msgstr ""
#: ../../library/atexit.rst:64
msgid ""
"Register *func* as an exit handler. Any optional arguments that are to be "
"passed to *func* must be passed as arguments to :func:`register`. It is "
"possible to register the same function and arguments more than once."
msgstr ""
#: ../../library/atexit.rst:69
msgid ""
"This function returns *func*, which makes it possible to use it as a "
"decorator."
msgstr ""
#: ../../library/atexit.rst:74
msgid ""
"Remove *func* from the list of exit handlers. :func:`unregister` silently "
"does nothing if *func* was not previously registered. If *func* has been "
"registered more than once, every occurrence of that function in the :mod:`!"
"atexit` call stack will be removed. Equality comparisons (``==``) are used "
"internally during unregistration, so function references do not need to have "
"matching identities."
msgstr ""
#: ../../library/atexit.rst:84
msgid "Module :mod:`readline`"
msgstr ""
#: ../../library/atexit.rst:85
msgid ""
"Useful example of :mod:`!atexit` to read and write :mod:`readline` history "
"files."
msgstr ""
#: ../../library/atexit.rst:92
msgid ":mod:`!atexit` Example"
msgstr ""
#: ../../library/atexit.rst:94
msgid ""
"The following simple example demonstrates how a module can initialize a "
"counter from a file when it is imported and save the counter's updated value "
"automatically when the program terminates without relying on the application "
"making an explicit call into this module at termination. ::"
msgstr ""
#: ../../library/atexit.rst:99
msgid ""
"try:\n"
" with open('counterfile') as infile:\n"
" _count = int(infile.read())\n"
"except FileNotFoundError:\n"
" _count = 0\n"
"\n"
"def incrcounter(n):\n"
" global _count\n"
" _count = _count + n\n"
"\n"
"def savecounter():\n"
" with open('counterfile', 'w') as outfile:\n"
" outfile.write('%d' % _count)\n"
"\n"
"import atexit\n"
"\n"
"atexit.register(savecounter)"
msgstr ""
#: ../../library/atexit.rst:117
msgid ""
"Positional and keyword arguments may also be passed to :func:`register` to "
"be passed along to the registered function when it is called::"
msgstr ""
#: ../../library/atexit.rst:120
msgid ""
"def goodbye(name, adjective):\n"
" print('Goodbye %s, it was %s to meet you.' % (name, adjective))\n"
"\n"
"import atexit\n"
"\n"
"atexit.register(goodbye, 'Donny', 'nice')\n"
"# or:\n"
"atexit.register(goodbye, adjective='nice', name='Donny')"
msgstr ""
#: ../../library/atexit.rst:129
msgid "Usage as a :term:`decorator`::"
msgstr ""
#: ../../library/atexit.rst:131
msgid ""
"import atexit\n"
"\n"
"@atexit.register\n"
"def goodbye():\n"
" print('You are now leaving the Python sector.')"
msgstr ""
#: ../../library/atexit.rst:137
msgid "This only works with functions that can be called without arguments."
msgstr ""