{"id":13831,"date":"2021-04-18T17:04:05","date_gmt":"2021-04-18T15:04:05","guid":{"rendered":"https:\/\/www.valcon.it\/python\/?p=13831"},"modified":"2025-07-20T19:23:20","modified_gmt":"2025-07-20T17:23:20","slug":"simple-programs","status":"publish","type":"post","link":"https:\/\/www.valcon.it\/python\/simple-programs\/","title":{"rendered":"Simple Programs"},"content":{"rendered":"\n<p><a href=\"https:\/\/wiki.python.org\/moin\/SimplePrograms\">Pagina del Wiki ufficiale con esempi di codice di difficolt\u00e0&nbsp; crescente<\/a> (con lievi modifiche)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 1<\/h2>\n\n\n\n<p>Output<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-layout-1 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\nprint(&quot;Hello, world!&quot;)\n<\/pre><\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\nHello, world!\n<\/pre><\/div><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 2<\/h2>\n\n\n\n<p>Input, assignment<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-layout-2 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\nname = input(&quot;What is your name? &quot;)\nprint(&quot;Hi, %s.&quot; %(name))\n<\/pre><\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\nWhat is your name? Sofia\nHi, Sofia.\n<\/pre><\/div><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 3<\/h2>\n\n\n\n<p>For loop, built-in enumerate function, new style formatting<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-layout-3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\nsorelle = &#x5B;&quot;Rachele&quot;, &quot;Sofia&quot;, &quot;Alice&quot;]\n\nfor i, x in enumerate(sorelle):\n    print(&quot;{indice}: {nome}&quot;.format(indice=i, nome=x))\n<\/pre><\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\n0: Rachele\n1: Sofia\n2: Alice\n<\/pre><\/div><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 4<\/h2>\n\n\n\n<p>Fibonacci, tuple assignment<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-layout-4 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\nparents, babies = (1, 1)\nwhile babies &lt; 100:\n    print(&quot;This generation has {0} babies&quot;.format(babies))\n    parents, babies = (babies, parents+babies)\n<\/pre><\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\nThis generation has 1 babies\nThis generation has 2 babies\nThis generation has 3 babies\nThis generation has 5 babies\nThis generation has 8 babies\nThis generation has 13 babies\nThis generation has 21 babies\nThis generation has 34 babies\nThis generation has 55 babies\nThis generation has 89 babies\n<\/pre><\/div><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 5<\/h2>\n\n\n\n<p>Functions<span id=\"line-34\"><\/span><span id=\"line-35\"><\/span><\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-layout-5 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\ndef greet(name):\n    print(&quot;Hello&quot;, name)\n\ngreet(&quot;Jack&quot;)\ngreet(&quot;Jill&quot;)\ngreet(&quot;Bob&quot;)\n<\/pre><\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\nHello Jack\nHello Jill\nHello Bob\n<\/pre><\/div><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 6<\/h2>\n\n\n\n<p>Import, regular expressions<\/p>\n\n\n\n<p><span id=\"line-45\"><\/span><span id=\"line-46\"><\/span><\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-layout-6 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\nimport re\nfor test_string in &#x5B;'555-1212', 'ILL-EGAL']:\n    if re.match(r'^\\d{3}-\\d{4}$', test_string):\n        print (test_string, 'is a valid US local phone number')\n    else:\n        print (test_string, 'rejected')\n<\/pre><\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\"><div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\n555-1212 is a valid US local phone number\nILL-EGAL rejected\n<\/pre><\/div><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 7<\/h2>\n\n\n\n<p>Dictionaries, generator expressions<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">prices      = {\"apple\": 0.40, \"banana\": 0.50}\nmy_purchase = {\"apple\": 1   , \"banana\": 6   }\n\ngrocery_bill = sum(prices[fruit]*my_purchase[fruit] for fruit in my_purchase)\n\nprint(\"I owe the grocer $%.2f\" %(grocery_bill))<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 8<\/h2>\n\n\n\n<p>Command line arguments, exception handling<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"># This program adds up integers that have been passed as arguments in the command line\nimport sys\ntry:\n    total = sum(int(arg) for arg in sys.argv[1:])\n    print(\"sum =\", total)\nexcept ValueError:\n    print(\"Please supply integer arguments\")<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 9<\/h2>\n\n\n\n<p>Opening files<span id=\"line-80\"><\/span><span id=\"line-81\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">import glob                            # indent your Python code to put into an email\npython_files = glob.glob('*.py')       # glob supports Unix style pathname extensions\nfor file_name in sorted(python_files):\n    print('    ------' + file_name)\n    with open(file_name) as f:\n        for line in f:\n            print ('    ' + line.rstrip())\n    print()<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 10<\/h2>\n\n\n\n<p>Time, conditionals, from .. import, for .. else<span id=\"line-97\"><\/span><span id=\"line-98\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">from time import localtime\n\nactivities = { 8: 'Sleeping',\n               9: 'Commuting',\n              17: 'Working',\n              18: 'Commuting',\n              20: 'Eating',\n              22: 'Resting' \n             }\ntime_now = localtime()\nhour     = time_now.tm_hour\n\nfor activity_time in sorted(activities.keys()):\n    if hour &lt; activity_time:\n        print(activities[activity_time])\n        break\nelse:\n    print('Unknown, AFK or sleeping!')<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 11<\/h2>\n\n\n\n<p>Triple-quoted strings, while loop<span id=\"line-120\"><\/span><span id=\"line-121\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">REFRAIN = '''\n%d bottles of beer on the wall,\n%d bottles of beer,\ntake one down, pass it around,\n%d bottles of beer on the wall!\n'''\nbottles_of_beer = 9\nwhile bottles_of_beer &gt; 1:\n    print(REFRAIN % (bottles_of_beer, bottles_of_beer, bottles_of_beer-1))\n    bottles_of_beer -= 1<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 12<\/h2>\n\n\n\n<p>Classes<span id=\"line-136\"><\/span><span id=\"line-137\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">class BankAccount(object):\n    def __init__(self, initial_balance=0):\n        self.balance = initial_balance\n    def deposit(self, amount):\n        self.balance += amount\n    def withdraw(self, amount):\n        self.balance -= amount\n    def overdrawn(self):\n        return self.balance &lt; 0\n\nmy_account = BankAccount(15)\nmy_account.withdraw(50)\nprint(my_account.balance, my_account.overdrawn())<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 13<\/h2>\n\n\n\n<p>Unit testing with unittest<span id=\"line-153\"><\/span><span id=\"line-154\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">import unittest\ndef median(pool):\n    copy = sorted(pool)\n    size = len(copy)\n    if size%2 == 1:\n        return copy[int((size - 1) \/ 2)]\n    else:\n        return (copy[int(size\/2 - 1)] + copy[int(size\/2)]) \/ 2\n\nclass TestMedian(unittest.TestCase):\n    def testMedian(self):\n        self.assertEqual(median([2, 9, 9, 7, 9, 2, 4, 5, 8]), 7)\n\nif __name__ == '__main__':\n    unittest.main()<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 14<\/h2>\n\n\n\n<p>Doctest-based testing<span id=\"line-171\"><\/span><span id=\"line-172\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">def median(pool):\n    '''Statistical median to demonstrate doctest.\n    &gt;&gt;&gt; median([2, 9, 9, 7, 9, 2, 4, 5, 8])\n    6 #change to 7 in order to pass the test\n    '''\n    copy = sorted(pool)\n    size = len(copy)\n    if size%2 == 1:\n        return copy[int((size - 1) \/ 2)]\n    else:\n        return (copy[int(size\/2 - 1)] + copy[int(size\/2)]) \/ 2\n\nif __name__ == '__main__':\n    import doctest\n    doctest.testmod()<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 15<\/h2>\n\n\n\n<p>itertools<span id=\"line-190\"><\/span><span id=\"line-191\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">from itertools import groupby\n\nlines = '''\nThis is the\nfirst paragraph.\nThis is the second.\n'''.splitlines()\n\n# Use itertools.groupby and bool to return groups of\n# consecutive lines that either have content or don't.\nfor has_chars, frags in groupby(lines, bool):\n    if has_chars:\n        print (' '.join(frags))\n# PRINTS:\n# This is the first paragraph.\n# This is the second.<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 16<\/h2>\n\n\n\n<p>csv module, tuple unpacking, cmp() built-in<span id=\"line-210\"><\/span><span id=\"line-211\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">import csv\n# need to define cmp function in Python 3\ndef cmp(a, b):\n    return (a &gt; b) - (a &lt; b)\n# write stocks data as comma-separated values\nwith open('stocks.csv', 'w', newline='') as stocksFileW:\n    writer = csv.writer(stocksFileW)\n    writer.writerows([\n        ['GOOG', 'Google, Inc.', 505.24, 0.47, 0.09],\n        ['YHOO', 'Yahoo! Inc.', 27.38, 0.33, 1.22],\n        ['CNET', 'CNET Networks, Inc.', 8.62, -0.13, -1.4901]\n    ])\n# read stocks data, print status messages\nwith open('stocks.csv', 'r') as stocksFile:\n    stocks = csv.reader(stocksFile)\n    status_labels = {-1: 'down', 0: 'unchanged', 1: 'up'}\n    for ticker, name, price, change, pct in stocks:\n        status = status_labels[cmp(float(change), 0.0)]\n        print ('%s is %s (%.2f)' % (name, status, float(pct)))<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 18<\/h2>\n\n\n\n<p>8-Queens Problem (recursion)<span id=\"line-238\"><\/span><span id=\"line-239\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">BOARD_SIZE = 8\n\ndef under_attack(col, queens):\n    left = right = col\n    for r, c in reversed(queens):\n        left, right = left - 1, right + 1\n        if c in (left, col, right):\n            return True\n    return False\n\ndef solve(n):\n    if n == 0:\n        return [[]]\n    smaller_solutions = solve(n - 1)\n    return [solution+[(n,i+1)]\n        for i in range(BOARD_SIZE)\n            for solution in smaller_solutions\n                if not under_attack(i+1, solution)]\n\nfor answer in solve(BOARD_SIZE):\n    print (answer)<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 20<\/h2>\n\n\n\n<p>Prime numbers sieve w\/fancy generators<span id=\"line-267\"><\/span><span id=\"line-268\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">import itertools\n\ndef iter_primes():\n     # an iterator of all numbers between 2 and +infinity\n     numbers = itertools.count(2)\n     # generate primes forever\n     while True:\n         # get the first number from the iterator (always a prime)\n         prime = next(numbers)\n         yield prime\n         # this code iteratively builds up a chain of\n         # filters...slightly tricky, but ponder it a bit\n         numbers = filter(prime.__rmod__, numbers)\n\nfor p in iter_primes():\n    if p &gt; 1000:\n        break\n    print (p)<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 21<\/h2>\n\n\n\n<p>XML\/HTML parsing<span id=\"line-292\"><\/span><span id=\"line-293\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">dinner_recipe = '''&lt;html&gt;&lt;body&gt;&lt;table&gt;\n&lt;tr&gt;&lt;th&gt;amt&lt;\/th&gt;&lt;th&gt;unit&lt;\/th&gt;&lt;th&gt;item&lt;\/th&gt;&lt;\/tr&gt;\n&lt;tr&gt;&lt;td&gt;24&lt;\/td&gt;&lt;td&gt;slices&lt;\/td&gt;&lt;td&gt;baguette&lt;\/td&gt;&lt;\/tr&gt;\n&lt;tr&gt;&lt;td&gt;2+&lt;\/td&gt;&lt;td&gt;tbsp&lt;\/td&gt;&lt;td&gt;olive oil&lt;\/td&gt;&lt;\/tr&gt;\n&lt;tr&gt;&lt;td&gt;1&lt;\/td&gt;&lt;td&gt;cup&lt;\/td&gt;&lt;td&gt;tomatoes&lt;\/td&gt;&lt;\/tr&gt;\n&lt;tr&gt;&lt;td&gt;1&lt;\/td&gt;&lt;td&gt;jar&lt;\/td&gt;&lt;td&gt;pesto&lt;\/td&gt;&lt;\/tr&gt;\n&lt;\/table&gt;&lt;\/body&gt;&lt;\/html&gt;'''\n\n# From http:\/\/effbot.org\/zone\/element-index.htm\nimport xml.etree.ElementTree as etree\ntree = etree.fromstring(dinner_recipe)\n\n# For invalid HTML use http:\/\/effbot.org\/zone\/element-soup.htm\n# import ElementSoup, StringIO\n# tree = ElementSoup.parse(StringIO.StringIO(dinner_recipe))\npantry = set(['olive oil', 'pesto'])\nfor ingredient in tree.getiterator('tr'):\n    amt, unit, item = ingredient\n    if item.tag == \"td\" and item.text not in pantry:\n        print (\"%s: %s %s\" % (item.text, amt.text, unit.text))<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 28<\/h2>\n\n\n\n<p>8-Queens Problem (define your own exceptions)<span id=\"line-318\"><\/span><span id=\"line-319\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">BOARD_SIZE = 8\n\nclass BailOut(Exception):\n    pass\n\ndef validate(queens):\n    left = right = col = queens[-1]\n    for r in reversed(queens[:-1]):\n        left, right = left-1, right+1\n        if r in (left, col, right):\n            raise BailOut\n\ndef add_queen(queens):\n    for i in range(BOARD_SIZE):\n        test_queens = queens + [i]\n        try:\n            validate(test_queens)\n            if len(test_queens) == BOARD_SIZE:\n                return test_queens\n            else:\n                return add_queen(test_queens)\n        except BailOut:\n            pass\n    raise BailOut\n\nqueens = add_queen([])\nprint (queens)\nprint (\"\\n\".join(\". \"*q + \"Q \" + \". \"*(BOARD_SIZE-q-1) for q in queens))<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 33<\/h2>\n\n\n\n<p>&#8220;Guess the Number&#8221; Game (edited) from <a href=\"http:\/\/inventwithpython.com\/\">http:\/\/inventwithpython.com<\/a><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">import random\n\nguesses_made = 0\nname         = input('Hello! What is your name?\\n')\nnumber       = random.randint(1, 20)\n\nprint ('Well, {0}, I am thinking of a number between 1 and 20.'.format(name))\nwhile(guesses_made &lt; 6):\n    guess         = int(input('Take a guess: '))\n    guesses_made += 1\n\n    if(guess &lt; number):\n        print ('Your guess is too low.')\n    if(guess &gt; number):\n        print ('Your guess is too high.')\n    if(guess == number):\n        break\n\nif(guess == number):\n    print('Good job, {0}! You guessed my number in {1} guesses!'.format(name, guesses_made))\nelse:\n    print('Nope. The number I was thinking of was {0}'.format(number))<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">, test_string): print (test_string, 'is a valid US local phone number') else: print (test_string, 'rejected')<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 7<\/h2>\n\n\n\n<p>Dictionaries, generator expressions<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 8<\/h2>\n\n\n\n<p>Command line arguments, exception handling<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 9<\/h2>\n\n\n\n<p>Opening files<span id=\"line-80\"><\/span><span id=\"line-81\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 10<\/h2>\n\n\n\n<p>Time, conditionals, from .. import, for .. else<span id=\"line-97\"><\/span><span id=\"line-98\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 11<\/h2>\n\n\n\n<p>Triple-quoted strings, while loop<span id=\"line-120\"><\/span><span id=\"line-121\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 12<\/h2>\n\n\n\n<p>Classes<span id=\"line-136\"><\/span><span id=\"line-137\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Numero 13<\/h3>\n\n\n\n<p>Unit testing with unittest<span id=\"line-153\"><\/span><span id=\"line-154\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Numero 14<\/h3>\n\n\n\n<p>Doctest-based testing<span id=\"line-171\"><\/span><span id=\"line-172\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Numero 15<\/h3>\n\n\n\n<p>itertools<span id=\"line-190\"><\/span><span id=\"line-191\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Numero 16<\/h3>\n\n\n\n<p>csv module, tuple unpacking, cmp() built-in<span id=\"line-210\"><\/span><span id=\"line-211\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Numero 18<\/h3>\n\n\n\n<p>8-Queens Problem (recursion)<span id=\"line-238\"><\/span><span id=\"line-239\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Numero 20<\/h3>\n\n\n\n<p>Prime numbers sieve w\/fancy generators<span id=\"line-267\"><\/span><span id=\"line-268\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Numero 21<\/h3>\n\n\n\n<p>XML\/HTML parsing<span id=\"line-292\"><\/span><span id=\"line-293\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Numero 28<\/h3>\n\n\n\n<p>8-Queens Problem (define your own exceptions)<span id=\"line-318\"><\/span><span id=\"line-319\"><\/span><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Numero 33<\/h2>\n\n\n\n<p>&#8220;Guess the Number&#8221; Game (edited) from <a href=\"http:\/\/inventwithpython.com\/\">http:\/\/inventwithpython.com<\/a><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Pagina del Wiki ufficiale con esempi di codice di difficolt\u00e0&nbsp; crescente (con lievi modifiche) Numero 1 Output Numero 2 Input, assignment Numero 3 For loop, built-in enumerate function, new style formatting Numero 4 Fibonacci, tuple assignment Numero 5 Functions Numero 6 Import, regular expressions Numero 7 Dictionaries, generator expressions prices = {&#8220;apple&#8221;: 0.40, &#8220;banana&#8221;: 0.50} &#8230; <a title=\"Simple Programs\" class=\"read-more\" href=\"https:\/\/www.valcon.it\/python\/simple-programs\/\" aria-label=\"Leggi di pi\u00f9 su Simple Programs\">Leggi tutto<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[41],"tags":[],"_links":{"self":[{"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/posts\/13831"}],"collection":[{"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/comments?post=13831"}],"version-history":[{"count":41,"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/posts\/13831\/revisions"}],"predecessor-version":[{"id":29037,"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/posts\/13831\/revisions\/29037"}],"wp:attachment":[{"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/media?parent=13831"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/categories?post=13831"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.valcon.it\/python\/wp-json\/wp\/v2\/tags?post=13831"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}