@@ -375,6 +375,28 @@ msgid ""
375375"scope_test()\n"
376376"print(\" In global scope:\" , spam)"
377377msgstr ""
378+ "def scope_test():\n"
379+ " def do_local():\n"
380+ " spam = \" local spam\" \n"
381+ "\n"
382+ " def do_nonlocal():\n"
383+ " nonlocal spam\n"
384+ " spam = \" nonlocal spam\" \n"
385+ "\n"
386+ " def do_global():\n"
387+ " global spam\n"
388+ " spam = \" global spam\" \n"
389+ "\n"
390+ " spam = \" test spam\" \n"
391+ " do_local()\n"
392+ " print(\" After local assignment:\" , spam)\n"
393+ " do_nonlocal()\n"
394+ " print(\" After nonlocal assignment:\" , spam)\n"
395+ " do_global()\n"
396+ " print(\" After global assignment:\" , spam)\n"
397+ "\n"
398+ "scope_test()\n"
399+ "print(\" In global scope:\" , spam)"
378400
379401#: ../../tutorial/classes.rst:191
380402msgid "The output of the example code is:"
@@ -387,6 +409,10 @@ msgid ""
387409"After global assignment: nonlocal spam\n"
388410"In global scope: global spam"
389411msgstr ""
412+ "After local assignment: test spam\n"
413+ "After nonlocal assignment: nonlocal spam\n"
414+ "After global assignment: nonlocal spam\n"
415+ "In global scope: global spam"
390416
391417#: ../../tutorial/classes.rst:200
392418msgid ""
@@ -665,6 +691,7 @@ msgid ""
665691"The other kind of instance attribute reference is a *method*. A method is a "
666692"function that \" belongs to\" an object."
667693msgstr ""
694+ "另一種執行個體屬性參考是 *方法* (method)。方法是\" 屬於\" 一個物件的函式。"
668695
669696#: ../../tutorial/classes.rst:345
670697msgid ""
@@ -795,6 +822,23 @@ msgid ""
795822">>> e.name # unique to e\n"
796823"'Buddy'"
797824msgstr ""
825+ "class Dog:\n"
826+ "\n"
827+ " kind = 'canine' # class variable shared by all instances\n"
828+ "\n"
829+ " def __init__(self, name):\n"
830+ " self.name = name # instance variable unique to each instance\n"
831+ "\n"
832+ ">>> d = Dog('Fido')\n"
833+ ">>> e = Dog('Buddy')\n"
834+ ">>> d.kind # shared by all dogs\n"
835+ "'canine'\n"
836+ ">>> e.kind # shared by all dogs\n"
837+ "'canine'\n"
838+ ">>> d.name # unique to d\n"
839+ "'Fido'\n"
840+ ">>> e.name # unique to e\n"
841+ "'Buddy'"
798842
799843#: ../../tutorial/classes.rst:422
800844msgid ""
@@ -1363,6 +1407,24 @@ msgid ""
13631407" for item in zip(keys, values):\n"
13641408" self.items_list.append(item)"
13651409msgstr ""
1410+ "class Mapping:\n"
1411+ " def __init__(self, iterable):\n"
1412+ " self.items_list = []\n"
1413+ " self.__update(iterable)\n"
1414+ "\n"
1415+ " def update(self, iterable):\n"
1416+ " for item in iterable:\n"
1417+ " self.items_list.append(item)\n"
1418+ "\n"
1419+ " __update = update # private copy of original update() method\n"
1420+ "\n"
1421+ "class MappingSubclass(Mapping):\n"
1422+ "\n"
1423+ " def update(self, keys, values):\n"
1424+ " # provides new signature for update()\n"
1425+ " # but does not break __init__()\n"
1426+ " for item in zip(keys, values):\n"
1427+ " self.items_list.append(item)"
13661428
13671429#: ../../tutorial/classes.rst:718
13681430msgid ""
@@ -1592,6 +1654,20 @@ msgid ""
15921654" self.index = self.index - 1\n"
15931655" return self.data[self.index]"
15941656msgstr ""
1657+ "class Reverse:\n"
1658+ " \"\"\" Iterator for looping over a sequence backwards.\"\"\" \n"
1659+ " def __init__(self, data):\n"
1660+ " self.data = data\n"
1661+ " self.index = len(data)\n"
1662+ "\n"
1663+ " def __iter__(self):\n"
1664+ " return self\n"
1665+ "\n"
1666+ " def __next__(self):\n"
1667+ " if self.index == 0:\n"
1668+ " raise StopIteration\n"
1669+ " self.index = self.index - 1\n"
1670+ " return self.data[self.index]"
15951671
15961672#: ../../tutorial/classes.rst:845
15971673msgid ""
@@ -1737,6 +1813,22 @@ msgid ""
17371813">>> list(data[i] for i in range(len(data)-1, -1, -1))\n"
17381814"['f', 'l', 'o', 'g']"
17391815msgstr ""
1816+ ">>> sum(i*i for i in range(10)) # sum of squares\n"
1817+ "285\n"
1818+ "\n"
1819+ ">>> xvec = [10, 20, 30]\n"
1820+ ">>> yvec = [7, 5, 3]\n"
1821+ ">>> sum(x*y for x,y in zip(xvec, yvec)) # dot product\n"
1822+ "260\n"
1823+ "\n"
1824+ ">>> unique_words = set(word for line in page for word in line.split())\n"
1825+ "\n"
1826+ ">>> valedictorian = max((student.gpa, student.name) for student in "
1827+ "graduates)\n"
1828+ "\n"
1829+ ">>> data = 'golf'\n"
1830+ ">>> list(data[i] for i in range(len(data)-1, -1, -1))\n"
1831+ "['f', 'l', 'o', 'g']"
17401832
17411833#: ../../tutorial/classes.rst:932
17421834msgid "Footnotes"
0 commit comments