From cf8a77a722e93f14e86fa1ae2c5c8a13106d40a6 Mon Sep 17 00:00:00 2001 From: arunmadhuk <49422453+arunmadhuk@users.noreply.github.com> Date: Sun, 28 Jun 2026 22:11:32 +0700 Subject: [PATCH] Update Tamil translations in introduction.po --- tutorial/introduction.po | 266 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 250 insertions(+), 16 deletions(-) diff --git a/tutorial/introduction.po b/tutorial/introduction.po index 3c69d93..0dc39c5 100644 --- a/tutorial/introduction.po +++ b/tutorial/introduction.po @@ -17,8 +17,10 @@ msgstr "" "Language: ta\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -msgid "An Informal Introduction to Python" -msgstr "பைத்தானுக்கு ஒரு எளிய அறிமுகம்" +msgid "" +"An Informal Introduction to Python" +msgstr "" +"பைத்தானுக்கு ஒரு எளிய அறிமுகம்" msgid "" "In the following examples, input and output are distinguished by the " @@ -45,8 +47,10 @@ msgid "" "may be omitted when typing in examples." msgstr "" -msgid "Some examples::" -msgstr "சில எடுத்துக்காட்டுகள்::" +msgid "" +"Some examples::" +msgstr "" +"சில எடுத்துக்காட்டுகள்::" msgid "" "# this is the first comment\n" @@ -54,17 +58,25 @@ msgid "" " # ... and now a third!\n" "text = \"# This is not a comment because it's inside quotes.\"" msgstr "" +"# this is the first comment\n" +"spam = 1 # and this is the second comment\n" +" # ... and now a third!\n" +"text = \"# This is not a comment because it's inside quotes.\"" -msgid "Using Python as a Calculator" -msgstr "பைத்தானை ஒரு கணிப்பானாகப் பயன்படுத்துதல்" +msgid "" +"Using Python as a Calculator" +msgstr "" +"பைத்தானை ஒரு கணிப்பானாகப் பயன்படுத்துதல்" msgid "" "Let's try some simple Python commands. Start the interpreter and wait for " "the primary prompt, ``>>>``. (It shouldn't take long.)" msgstr "" -msgid "Numbers" -msgstr "எண்கள்" +msgid "" +"Numbers" +msgstr "" +"எண்கள்" msgid "" "The interpreter acts as a simple calculator: you can type an expression into " @@ -83,6 +95,14 @@ msgid "" ">>> 8 / 5 # division always returns a floating-point number\n" "1.6" msgstr "" +">>> 2 + 2\n" +"4\n" +">>> 50 - 5*6\n" +"20\n" +">>> (50 - 5*6) / 4\n" +"5.0\n" +">>> 8 / 5 # division always returns a floating-point number\n" +"1.6" msgid "" "The integer numbers (e.g. ``2``, ``4``, ``20``) have type :class:`int`, the " @@ -107,6 +127,15 @@ msgid "" ">>> 5 * 3 + 2 # floored quotient * divisor + remainder\n" "17" msgstr "" +">>> 17 / 3 # classic division returns a float\n" +"5.666666666666667\n" +">>>\n" +">>> 17 // 3 # floor division discards the fractional part\n" +"5\n" +">>> 17 % 3 # the % operator returns the remainder of the division\n" +"2\n" +">>> 5 * 3 + 2 # floored quotient * divisor + remainder\n" +"17" msgid "" "With Python, it is possible to use the ``**`` operator to calculate powers " @@ -119,6 +148,10 @@ msgid "" ">>> 2 ** 7 # 2 to the power of 7\n" "128" msgstr "" +">>> 5 ** 2 # 5 squared\n" +"25\n" +">>> 2 ** 7 # 2 to the power of 7\n" +"128" msgid "" "The equal sign (``=``) is used to assign a value to a variable. Afterwards, " @@ -131,6 +164,10 @@ msgid "" ">>> width * height\n" "900" msgstr "" +">>> width = 20\n" +">>> height = 5 * 9\n" +">>> width * height\n" +"900" msgid "" "If a variable is not \"defined\" (assigned a value), trying to use it will " @@ -172,6 +209,14 @@ msgid "" ">>> round(_, 2)\n" "113.06" msgstr "" +">>> tax = 12.5 / 100\n" +">>> price = 100.50\n" +">>> price * tax\n" +"12.5625\n" +">>> price + _\n" +"113.0625\n" +">>> round(_, 2)\n" +"113.06" msgid "" "This variable should be treated as read-only by the user. Don't explicitly " @@ -187,8 +232,10 @@ msgid "" "imaginary part (e.g. ``3+5j``)." msgstr "" -msgid "Text" -msgstr "உரை" +msgid "" +"Text" +msgstr "" +"உரை" msgid "" "Python can manipulate text (represented by type :class:`str`, so-called " @@ -206,6 +253,12 @@ msgid "" ">>> '1975' # digits and numerals enclosed in quotes are also strings\n" "'1975'" msgstr "" +">>> 'spam eggs' # single quotes\n" +"'spam eggs'\n" +">>> \"Paris rabbit got your back :)! Yay!\" # double quotes\n" +"'Paris rabbit got your back :)! Yay!'\n" +">>> '1975' # digits and numerals enclosed in quotes are also strings\n" +"'1975'" msgid "" "To quote a quote, we need to \"escape\" it, by preceding it with ``\\``. " @@ -255,6 +308,11 @@ msgid "" ">>> print(r'C:\\this\\name') # note the r before the quote\n" "C:\\this\\name" msgstr "" +">>> print('C:\\this\\name') # here \\t means tab, \\n means newline\n" +"C: his\n" +"ame\n" +">>> print(r'C:\\this\\name') # note the r before the quote\n" +"C:\\this\\name" msgid "" "There is one subtle aspect to raw strings: a raw string may not end in an " @@ -282,6 +340,16 @@ msgid "" "\n" ">>>" msgstr "" +">>> print(\"\"\"\\\n" +"... Usage: thingy [OPTIONS]\n" +"... -h Display this usage message\n" +"... -H hostname Hostname to connect to\n" +"... \"\"\")\n" +"Usage: thingy [OPTIONS]\n" +" -h Display this usage message\n" +" -H hostname Hostname to connect to\n" +"\n" +">>>" msgid "" "Strings can be concatenated (glued together) with the ``+`` operator, and " @@ -293,6 +361,9 @@ msgid "" ">>> 3 * 'un' + 'ium'\n" "'unununium'" msgstr "" +">>> # 3 times 'un', followed by 'ium'\n" +">>> 3 * 'un' + 'ium'\n" +"'unununium'" msgid "" "Two or more *string literals* (i.e. the ones enclosed between quotes) next " @@ -303,6 +374,8 @@ msgid "" ">>> 'Py' 'thon'\n" "'Python'" msgstr "" +">>> 'Py' 'thon'\n" +"'Python'" msgid "" "This feature is particularly useful when you want to break long strings::" @@ -315,6 +388,10 @@ msgid "" ">>> text\n" "'Put several strings within parentheses to have them joined together.'" msgstr "" +">>> text = ('Put several strings within parentheses '\n" +"... 'to have them joined together.')\n" +">>> text\n" +"'Put several strings within parentheses to have them joined together.'" msgid "" "This only works with two literals though, not with variables or expressions::" @@ -334,6 +411,17 @@ msgid "" " ^^^^^\n" "SyntaxError: invalid syntax" msgstr "" +">>> prefix = 'Py'\n" +">>> prefix 'thon' # can't concatenate a variable and a string literal\n" +" File \"\", line 1\n" +" prefix 'thon'\n" +" ^^^^^^\n" +"SyntaxError: invalid syntax\n" +">>> ('un' * 3) 'ium'\n" +" File \"\", line 1\n" +" ('un' * 3) 'ium'\n" +" ^^^^^\n" +"SyntaxError: invalid syntax" msgid "" "If you want to concatenate variables or a variable and a literal, use ``+``::" @@ -344,6 +432,8 @@ msgid "" ">>> prefix + 'thon'\n" "'Python'" msgstr "" +">>> prefix + 'thon'\n" +"'Python'" msgid "" "Strings can be *indexed* (subscripted), with the first character having " @@ -358,6 +448,11 @@ msgid "" ">>> word[5] # character in position 5\n" "'n'" msgstr "" +">>> word = 'Python'\n" +">>> word[0] # character in position 0\n" +"'P'\n" +">>> word[5] # character in position 5\n" +"'n'" msgid "" "Indices may also be negative numbers, to start counting from the right::" @@ -371,9 +466,17 @@ msgid "" ">>> word[-6]\n" "'P'" msgstr "" +">>> word[-1] # last character\n" +"'n'\n" +">>> word[-2] # second-last character\n" +"'o'\n" +">>> word[-6]\n" +"'P'" -msgid "Note that since -0 is the same as 0, negative indices start from -1." -msgstr "-0 என்பது 0-க்குச் சமமானது என்பதால், எதிர்மறை index-கள் -1-லிருந்து தொடங்குகின்றன என்பதை கவனத்தில் கொள்ளவும்." +msgid "" +"Note that since -0 is the same as 0, negative indices start from -1." +msgstr "" +"-0 என்பது 0-க்குச் சமமானது என்பதால், எதிர்மறை index-கள் -1-லிருந்து தொடங்குகின்றன என்பதை கவனத்தில் கொள்ளவும்." msgid "" "In addition to indexing, *slicing* is also supported. While indexing is " @@ -387,6 +490,10 @@ msgid "" ">>> word[2:5] # characters from position 2 (included) to 5 (excluded)\n" "'tho'" msgstr "" +">>> word[0:2] # characters from position 0 (included) to 2 (excluded)\n" +"'Py'\n" +">>> word[2:5] # characters from position 2 (included) to 5 (excluded)\n" +"'tho'" msgid "" "Slice indices have useful defaults; an omitted first index defaults to zero, " @@ -401,6 +508,12 @@ msgid "" ">>> word[-2:] # characters from the second-last (included) to the end\n" "'on'" msgstr "" +">>> word[:2] # character from the beginning to position 2 (excluded)\n" +"'Py'\n" +">>> word[4:] # characters from position 4 (included) to the end\n" +"'on'\n" +">>> word[-2:] # characters from the second-last (included) to the end\n" +"'on'" msgid "" "Note how the start is always included, and the end always excluded. This " @@ -413,6 +526,10 @@ msgid "" ">>> word[:4] + word[4:]\n" "'Python'" msgstr "" +">>> word[:2] + word[2:]\n" +"'Python'\n" +">>> word[:4] + word[4:]\n" +"'Python'" msgid "" "One way to remember how slices work is to think of the indices as pointing " @@ -428,6 +545,11 @@ msgid "" " 0 1 2 3 4 5 6\n" "-6 -5 -4 -3 -2 -1" msgstr "" +" +---+---+---+---+---+---+\n" +" | P | y | t | h | o | n |\n" +" +---+---+---+---+---+---+\n" +" 0 1 2 3 4 5 6\n" +"-6 -5 -4 -3 -2 -1" msgid "" "The first row of numbers gives the position of the indices 0...6 in the " @@ -442,8 +564,10 @@ msgid "" "``word[1:3]`` is 2." msgstr "" -msgid "Attempting to use an index that is too large will result in an error::" -msgstr "மிகப் பெரிய index-ஐப் பயன்படுத்த முயற்சித்தால், அது ஒரு error-ஐ ஏற்படுத்தும்::" +msgid "" +"Attempting to use an index that is too large will result in an error::" +msgstr "" +"மிகப் பெரிய index-ஐப் பயன்படுத்த முயற்சித்தால், அது ஒரு error-ஐ ஏற்படுத்தும்::" msgid "" ">>> word[42] # the word only has 6 characters\n" @@ -451,6 +575,10 @@ msgid "" " File \"\", line 1, in \n" "IndexError: string index out of range" msgstr "" +">>> word[42] # the word only has 6 characters\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"IndexError: string index out of range" msgid "" "However, out of range slice indexes are handled gracefully when used for " @@ -463,6 +591,10 @@ msgid "" ">>> word[42:]\n" "''" msgstr "" +">>> word[4:42]\n" +"'on'\n" +">>> word[42:]\n" +"''" msgid "" "Python strings cannot be changed --- they are :term:`immutable`. Therefore, " @@ -479,6 +611,14 @@ msgid "" " File \"\", line 1, in \n" "TypeError: 'str' object does not support item assignment" msgstr "" +">>> word[0] = 'J'\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: 'str' object does not support item assignment\n" +">>> word[2:] = 'py'\n" +"Traceback (most recent call last):\n" +" File \"\", line 1, in \n" +"TypeError: 'str' object does not support item assignment" msgid "" "If you need a different string, you should create a new one::" @@ -491,6 +631,10 @@ msgid "" ">>> word[:2] + 'py'\n" "'Pypy'" msgstr "" +">>> 'J' + word[1:]\n" +"'Jython'\n" +">>> word[:2] + 'py'\n" +"'Pypy'" msgid "" "The built-in function :func:`len` returns the length of a string::" @@ -502,6 +646,9 @@ msgid "" ">>> len(s)\n" "34" msgstr "" +">>> s = 'supercalifragilisticexpialidocious'\n" +">>> len(s)\n" +"34" msgid "" ":ref:`textseq`" @@ -546,6 +693,7 @@ msgstr "" msgid "" ":ref:`old-string-formatting`" msgstr "" +":ref:`old-string-formatting`" msgid "" "The old formatting operations invoked when strings are the left operand of " @@ -569,6 +717,9 @@ msgid "" ">>> squares\n" "[1, 4, 9, 16, 25]" msgstr "" +">>> squares = [1, 4, 9, 16, 25]\n" +">>> squares\n" +"[1, 4, 9, 16, 25]" msgid "" "Like strings (and all other built-in :term:`sequence` types), lists can be " @@ -583,6 +734,12 @@ msgid "" ">>> squares[-3:] # slicing returns a new list\n" "[9, 16, 25]" msgstr "" +">>> squares[0] # indexing returns the item\n" +"1\n" +">>> squares[-1]\n" +"25\n" +">>> squares[-3:] # slicing returns a new list\n" +"[9, 16, 25]" msgid "" "Lists also support operations like concatenation::" @@ -593,6 +750,8 @@ msgid "" ">>> squares + [36, 49, 64, 81, 100]\n" "[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]" msgstr "" +">>> squares + [36, 49, 64, 81, 100]\n" +"[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]" msgid "" "Unlike strings, which are :term:`immutable`, lists are a :term:`mutable` " @@ -607,6 +766,12 @@ msgid "" ">>> cubes\n" "[1, 8, 27, 64, 125]" msgstr "" +">>> cubes = [1, 8, 27, 65, 125] # something's wrong here\n" +">>> 4 ** 3 # the cube of 4 is 64, not 65!\n" +"64\n" +">>> cubes[3] = 64 # replace the wrong value\n" +">>> cubes\n" +"[1, 8, 27, 64, 125]" msgid "" "You can also add new items at the end of the list, by using the :meth:`list." @@ -619,6 +784,10 @@ msgid "" ">>> cubes\n" "[1, 8, 27, 64, 125, 216, 343]" msgstr "" +">>> cubes.append(216) # add the cube of 6\n" +">>> cubes.append(7 ** 3) # and the cube of 7\n" +">>> cubes\n" +"[1, 8, 27, 64, 125, 216, 343]" msgid "" "Simple assignment in Python never copies data. When you assign a list to a " @@ -636,6 +805,13 @@ msgid "" ">>> rgb\n" "[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgstr "" +">>> rgb = [\"Red\", \"Green\", \"Blue\"]\n" +">>> rgba = rgb\n" +">>> id(rgb) == id(rgba) # they reference the same object\n" +"True\n" +">>> rgba.append(\"Alph\")\n" +">>> rgb\n" +"[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgid "" "All slice operations return a new list containing the requested elements. " @@ -651,6 +827,12 @@ msgid "" ">>> rgba\n" "[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgstr "" +">>> correct_rgba = rgba[:]\n" +">>> correct_rgba[-1] = \"Alpha\"\n" +">>> correct_rgba\n" +"[\"Red\", \"Green\", \"Blue\", \"Alpha\"]\n" +">>> rgba\n" +"[\"Red\", \"Green\", \"Blue\", \"Alph\"]" msgid "" "Assignment to slices is also possible, and this can even change the size of " @@ -674,15 +856,35 @@ msgid "" ">>> letters\n" "[]" msgstr "" +">>> letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g']\n" +">>> letters\n" +"['a', 'b', 'c', 'd', 'e', 'f', 'g']\n" +">>> # replace some values\n" +">>> letters[2:5] = ['C', 'D', 'E']\n" +">>> letters\n" +"['a', 'b', 'C', 'D', 'E', 'f', 'g']\n" +">>> # now remove them\n" +">>> letters[2:5] = []\n" +">>> letters\n" +"['a', 'b', 'f', 'g']\n" +">>> # clear the list by replacing all the elements with an empty list\n" +">>> letters[:] = []\n" +">>> letters\n" +"[]" -msgid "The built-in function :func:`len` also applies to lists::" -msgstr "built-in function len() list-களுக்கும் பொருந்தும்::" +msgid "" +"The built-in function :func:`len` also applies to lists::" +msgstr "" +"built-in function len() list-களுக்கும் பொருந்தும்::" msgid "" ">>> letters = ['a', 'b', 'c', 'd']\n" ">>> len(letters)\n" "4" msgstr "" +">>> letters = ['a', 'b', 'c', 'd']\n" +">>> len(letters)\n" +"4" msgid "" "It is possible to nest lists (create lists containing other lists), for " @@ -700,6 +902,15 @@ msgid "" ">>> x[0][1]\n" "'b'" msgstr "" +">>> a = ['a', 'b', 'c']\n" +">>> n = [1, 2, 3]\n" +">>> x = [a, n]\n" +">>> x\n" +"[['a', 'b', 'c'], [1, 2, 3]]\n" +">>> x[0]\n" +"['a', 'b', 'c']\n" +">>> x[0][1]\n" +"'b'" msgid "" "First Steps Towards Programming" @@ -729,6 +940,20 @@ msgid "" "5\n" "8" msgstr "" +">>> # Fibonacci series:\n" +">>> # the sum of two elements defines the next\n" +">>> a, b = 0, 1\n" +">>> while a < 10:\n" +"... print(a)\n" +"... a, b = b, a+b\n" +"...\n" +"0\n" +"1\n" +"1\n" +"2\n" +"3\n" +"5\n" +"8" msgid "" "This example introduces several new features." @@ -779,6 +1004,9 @@ msgid "" ">>> print('The value of i is', i)\n" "The value of i is 65536" msgstr "" +">>> i = 256*256\n" +">>> print('The value of i is', i)\n" +"The value of i is 65536" msgid "" "The keyword argument *end* can be used to avoid the newline after the " @@ -793,6 +1021,12 @@ msgid "" "...\n" "0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987," msgstr "" +">>> a, b = 0, 1\n" +">>> while a < 1000:\n" +"... print(a, end=',')\n" +"... a, b = b, a+b\n" +"...\n" +"0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987," msgid "" "Footnotes"