88msgstr ""
99"Project-Id-Version : Python 3.15\n "
1010"Report-Msgid-Bugs-To : \n "
11- "POT-Creation-Date : 2026-07-25 14:57 +0000\n "
11+ "POT-Creation-Date : 2026-07-29 15:50 +0000\n "
1212"PO-Revision-Date : 2025-09-16 00:01+0000\n "
1313"Language-Team : Tamil (https://app.transifex.com/python-doc/teams/5390/ta/)\n "
1414"MIME-Version : 1.0\n "
@@ -24,51 +24,100 @@ msgid "**Source code:** :source:`Lib/difflib.py`"
2424msgstr ""
2525
2626msgid ""
27- "This module provides classes and functions for comparing sequences. It can "
28- "be used for example, for comparing files, and can produce information about "
29- "file differences in various formats, including HTML and context and unified "
30- "diffs. For comparing directories and files, see also, the :mod:`filecmp` "
31- "module."
27+ "This module provides classes and functions for comparing sequences. Most of "
28+ "them compare sequences of text lines (for example lists of strings, or :term:"
29+ "`file objects <file object>`) and produce :dfn:`diffs` -- reports on the "
30+ "differences. Diffs can be produced in in various formats, including HTML and "
31+ "context and unified diffs -- formats produced by tools like :manpage:`diff "
32+ "<diff(1)>` and :manpage:`git diff <git-diff(1)>`."
3233msgstr ""
3334
3435msgid ""
35- "This is a flexible class for comparing pairs of sequences of any type, so "
36- "long as the sequence elements are :term:`hashable`. The basic algorithm "
37- "predates, and is a little fancier than, an algorithm published in the late "
38- "1980's by Ratcliff and Obershelp under the hyperbolic name \" gestalt pattern "
39- "matching.\" The idea is to find the longest contiguous matching subsequence "
40- "that contains no \" junk\" elements; these \" junk\" elements are ones that "
41- "are uninteresting in some sense, such as blank lines or whitespace. "
42- "(Handling junk is an extension to the Ratcliff and Obershelp algorithm.) The "
43- "same idea is then applied recursively to the pieces of the sequences to the "
44- "left and to the right of the matching subsequence. This does not yield "
45- "minimal edit sequences, but does tend to yield matches that \" look right\" "
46- "to people."
36+ "Comparisons are done using a matching algorithm implemented in :class:"
37+ "`SequenceMatcher` -- a flexible class for comparing pairs of sequences of "
38+ "any type, not just text, so long as the sequence elements are :term:"
39+ "`hashable`."
40+ msgstr ""
41+
42+ msgid "Junk heuristic"
4743msgstr ""
4844
4945msgid ""
50- "**Timing:** The basic Ratcliff-Obershelp algorithm is cubic time in the "
51- "worst case and quadratic time in the expected case. :class:`SequenceMatcher` "
52- "is quadratic time for the worst case and has expected-case behavior "
53- "dependent in a complicated way on how many elements the sequences have in "
54- "common; best case time is linear."
46+ ":mod:`!difflib` uses a :dfn:`junk` heuristic: some items are deemed to be :"
47+ "dfn:`junk`, and ignored when searching for similarities. Ideally, these are "
48+ "uninteresting or common items, such as blank lines or whitespace."
5549msgstr ""
5650
5751msgid ""
58- "**Junk**: :class:`SequenceMatcher` accepts an ``isjunk`` predicate and an "
59- "``autojunk`` flag. Items that are considered as junk will not be considered "
60- "to find similar content blocks. This can produce better results for humans "
61- "(typically breaking on whitespace) and faster (because it reduces the number "
62- "of possible combinations). But it can also cause pathological cases where "
63- "too many items considered junk cause an unexpectedly large (but correct) "
64- "diff result. You should consider tuning them or turning them off depending "
65- "on your data. Moreover, only the second sequence is inspected for junk. This "
66- "causes the diff output to not be symmetrical. When ``autojunk=True``, it "
67- "will consider as junk the items that account for more than 1% of the "
68- "sequence, if it is at least 200 items long."
52+ "This heuristic can speed the algorithm up (because it reduces the number of "
53+ "possible combinations) and it can produce results that are more "
54+ "understandable for humans (typically breaking on whitespace). But it can "
55+ "also cause pathological cases:"
6956msgstr ""
7057
71- msgid "Added the *autojunk* parameter."
58+ msgid ""
59+ "Inappropriately chosen junk items can cause an unexpectedly **large** (but "
60+ "still correct) result."
61+ msgstr ""
62+
63+ msgid ""
64+ "The default heuristic is **asymmetric**: only the second sequence is "
65+ "inspected when determining what is considered junk, so comparing A to B can "
66+ "give different results than comparing B to A and reversing the result."
67+ msgstr ""
68+
69+ msgid ""
70+ "By default, if the second input sequence is at least 200 items long, items "
71+ "that account for more than 1% it are considered *junk*."
72+ msgstr ""
73+
74+ msgid ""
75+ "Depending on your data, you should consider turning this heuristic off "
76+ "(setting :class:`~difflib.SequenceMatcher`'s *autojunk* argument to to "
77+ "``False``) or tuning it (using the *isjunk* argument, perhaps to one of the :"
78+ "ref:`predefined functions <difflib-isjunk-functions>`)."
79+ msgstr ""
80+
81+ msgid "The :mod:`!difflib` algorithm"
82+ msgstr ""
83+
84+ msgid ""
85+ "The algorithm used in :class:`SequenceMatcher` predates, and is a little "
86+ "fancier than, an algorithm published in the late 1980s by Ratcliff and "
87+ "Obershelp under the hyperbolic name \" gestalt pattern matching.\" The idea "
88+ "is to find the longest contiguous subsequence common to both inputs, then "
89+ "recursively handle the pieces of the sequences to the left and to the right "
90+ "of the matching subsequence."
91+ msgstr ""
92+
93+ msgid ""
94+ "`Pattern Matching: The Gestalt Approach <https://jacobfilipp.com/DrDobbs/"
95+ "articles/DDJ/1988/8807/8807c/8807c.htm>`_"
96+ msgstr ""
97+
98+ msgid ""
99+ "Discussion of a similar algorithm by John W. Ratcliff and D. E. Metzener. "
100+ "This was published in Dr. Dobb's Journal in July, 1988."
101+ msgstr ""
102+
103+ msgid ""
104+ "As an extension to the Ratcliff and Obershelp algorithm, :mod:`!difflib` "
105+ "searches for the longest *junk-free* contiguous subsequence. See the :ref:"
106+ "`difflib-junk` section for details."
107+ msgstr ""
108+
109+ msgid "Timing"
110+ msgstr ""
111+
112+ msgid ""
113+ "The basic Ratcliff-Obershelp algorithm is cubic time in the worst case and "
114+ "quadratic time in the expected case. :mod:`difflib`'s algorithm is quadratic "
115+ "time for the worst case and has expected-case behavior dependent in a "
116+ "complicated way on how many elements the sequences have in common; best case "
117+ "time is linear."
118+ msgstr ""
119+
120+ msgid "Diff generation"
72121msgstr ""
73122
74123msgid ""
@@ -118,6 +167,58 @@ msgid ""
118167"tabs or line breaks."
119168msgstr ""
120169
170+ msgid ""
171+ "Note that :class:`Differ`\\ -generated deltas make no claim to be "
172+ "**minimal** diffs. To the contrary, minimal diffs are often counter-"
173+ "intuitive for humans, because they synch up anywhere possible, sometimes at "
174+ "accidental matches 100 pages apart. Restricting synch points to contiguous "
175+ "matches preserves some notion of locality, at the occasional cost of "
176+ "producing a longer diff."
177+ msgstr ""
178+
179+ msgid "The :class:`Differ` class has this constructor:"
180+ msgstr ""
181+
182+ msgid ""
183+ "Optional keyword parameters *linejunk* and *charjunk* are for filter "
184+ "functions (or ``None``):"
185+ msgstr ""
186+
187+ msgid ""
188+ "*linejunk*: A function that accepts a single string argument, and returns "
189+ "true if the string is junk. The default is ``None``, meaning that no line "
190+ "is considered junk."
191+ msgstr ""
192+
193+ msgid ""
194+ "*charjunk*: A function that accepts a single character argument (a string of "
195+ "length 1), and returns true if the character is junk. The default is "
196+ "``None``, meaning that no character is considered junk."
197+ msgstr ""
198+
199+ msgid ""
200+ "These junk-filtering functions speed up matching to find differences and do "
201+ "not cause any differing lines or characters to be ignored. Read the "
202+ "description of the :meth:`~SequenceMatcher.find_longest_match` method's "
203+ "*isjunk* parameter for an explanation."
204+ msgstr ""
205+
206+ msgid ""
207+ ":class:`Differ` objects are used (deltas generated) via a single method:"
208+ msgstr ""
209+
210+ msgid ""
211+ "Compare two sequences of lines, and generate the delta (a sequence of lines)."
212+ msgstr ""
213+
214+ msgid ""
215+ "Each sequence must contain individual single-line strings ending with "
216+ "newlines. Such sequences can be obtained from the :meth:`~io.IOBase."
217+ "readlines` method of file-like objects. The generated delta also consists "
218+ "of newline-terminated strings, ready to be printed as-is via the :meth:`~io."
219+ "IOBase.writelines` method of a file-like object."
220+ msgstr ""
221+
121222msgid ""
122223"This class can be used to create an HTML table (or a complete HTML file "
123224"containing the table) showing a side by side, line by line comparison of "
@@ -348,6 +449,9 @@ msgid ""
348449"unknown/inconsistent encodings as *a* and *b*."
349450msgstr ""
350451
452+ msgid "Junk definition functions"
453+ msgstr ""
454+
351455msgid ""
352456"Return ``True`` for ignorable lines. The line *line* is ignorable if *line* "
353457"is blank or contains a single ``'#'``, otherwise it is not ignorable. Used "
@@ -360,22 +464,9 @@ msgid ""
360464"for parameter *charjunk* in :func:`ndiff`."
361465msgstr ""
362466
363- msgid ""
364- "`Pattern Matching: The Gestalt Approach <https://jacobfilipp.com/DrDobbs/"
365- "articles/DDJ/1988/8807/8807c/8807c.htm>`_"
366- msgstr ""
367-
368- msgid ""
369- "Discussion of a similar algorithm by John W. Ratcliff and D. E. Metzener. "
370- "This was published in Dr. Dobb's Journal in July, 1988."
371- msgstr ""
372-
373467msgid "SequenceMatcher objects"
374468msgstr ""
375469
376- msgid "The :class:`SequenceMatcher` class has this constructor:"
377- msgstr ""
378-
379470msgid ""
380471"Optional argument *isjunk* must be ``None`` (the default) or a one-argument "
381472"function that takes a sequence element and returns true if and only if the "
@@ -403,6 +494,9 @@ msgid ""
403494"heuristic."
404495msgstr ""
405496
497+ msgid "Added the *autojunk* parameter."
498+ msgstr ""
499+
406500msgid ""
407501"SequenceMatcher objects get three data attributes: *bjunk* is the set of "
408502"elements of *b* for which *isjunk* is ``True``; *bpopular* is the set of non-"
@@ -594,6 +688,9 @@ msgid ""
594688"ratio`:"
595689msgstr ""
596690
691+ msgid "Examples"
692+ msgstr ""
693+
597694msgid "SequenceMatcher examples"
598695msgstr ""
599696
@@ -634,61 +731,6 @@ msgid ""
634731"`SequenceMatcher`."
635732msgstr ""
636733
637- msgid "Differ objects"
638- msgstr ""
639-
640- msgid ""
641- "Note that :class:`Differ`\\ -generated deltas make no claim to be "
642- "**minimal** diffs. To the contrary, minimal diffs are often counter-"
643- "intuitive, because they synch up anywhere possible, sometimes accidental "
644- "matches 100 pages apart. Restricting synch points to contiguous matches "
645- "preserves some notion of locality, at the occasional cost of producing a "
646- "longer diff."
647- msgstr ""
648-
649- msgid "The :class:`Differ` class has this constructor:"
650- msgstr ""
651-
652- msgid ""
653- "Optional keyword parameters *linejunk* and *charjunk* are for filter "
654- "functions (or ``None``):"
655- msgstr ""
656-
657- msgid ""
658- "*linejunk*: A function that accepts a single string argument, and returns "
659- "true if the string is junk. The default is ``None``, meaning that no line "
660- "is considered junk."
661- msgstr ""
662-
663- msgid ""
664- "*charjunk*: A function that accepts a single character argument (a string of "
665- "length 1), and returns true if the character is junk. The default is "
666- "``None``, meaning that no character is considered junk."
667- msgstr ""
668-
669- msgid ""
670- "These junk-filtering functions speed up matching to find differences and do "
671- "not cause any differing lines or characters to be ignored. Read the "
672- "description of the :meth:`~SequenceMatcher.find_longest_match` method's "
673- "*isjunk* parameter for an explanation."
674- msgstr ""
675-
676- msgid ""
677- ":class:`Differ` objects are used (deltas generated) via a single method:"
678- msgstr ""
679-
680- msgid ""
681- "Compare two sequences of lines, and generate the delta (a sequence of lines)."
682- msgstr ""
683-
684- msgid ""
685- "Each sequence must contain individual single-line strings ending with "
686- "newlines. Such sequences can be obtained from the :meth:`~io.IOBase."
687- "readlines` method of file-like objects. The delta generated also consists "
688- "of newline-terminated strings, ready to be printed as-is via the :meth:`~io."
689- "IOBase.writelines` method of a file-like object."
690- msgstr ""
691-
692734msgid "Differ example"
693735msgstr ""
694736
0 commit comments