Cours-Gratuit
  • Accueil
  • Blog
  • Cours informatique
home icon Cours gratuits » Cours informatique » Cours programmation » Cours Python » Python courses

Exercises and solutions to learn and review python programming

Exercises and solutions to learn and review python programming
Participez au vote ☆☆☆☆☆★★★★★

Python programming — exercises

Installation

Install Python

Install python and some libraries Check that you can write:

$ python

>>> import simplejson

>>> import feedparser

>>> import cherrypy

>>> import pymongo

>>> import nltk

>>> nltk.download()

>>> from nltk.corpus import brown

>>> brown.words()

[’The’, ’Fulton’, ’County’, ’Grand’, ’Jury’, ’said’, ]

Install Python

Install ipython (e.g., by pip) Start with: ipython -pylab

Once installed make sure you can write:

In [1]: plot(sin(linspace(0,8,100)))

Install CGI Python

Copy CGI script from

˜faan/cgi-bin/helloworld

to your own directory: ~/public_html/cgi-bin/

and see that it works.

Extra task

After installing Cherrypy see that it works.

Try to get the from the tutorial to work.

Note that this requires the installation of a SQL database. One of the line in the file states:

# configure your database connection here

__connection__ = ’mysql://root:@localhost/test’

If you don’t want to install MySQL try installing the simpler sqlite and its python support and then change the connection line.

Extra extra installation tasks

Install spyder

Get a hello world Google App Engine application up and running.

Get a hello world Heroku up and running.

General Python

For loops, str and int

Write a function, ishashad that determines whether a number is a Harshad number (for number base 10).

A Harshad number “is an integer that is divisible by the sum of its digits” (Wikipedia)

Example: 81 → 8 + 1 = 9 → 81/9 = 9 → Harshad!

>>> ishashad(81)

True

Hint: convert the number to a string.

Dictionaries

Count the number of items in a list with the result in a dictionary.

List example:

l = [’a’, ’b’, ’f’, ’f’, ’b’, ’b’] Should give something like: c = {’a’: 1, ’b’: 3, ’f’: 2}

What and where is defaultdict?

Recursion

Implement a factorial function, n!, with recursion:

>>> factorial(4)

(4! = 1 × 2 × 3 × 4 = 24)

See what happens with factorial(1000)

Classes

Construct a module with a derived dictionary class with sorted keys:

>>> s = SortedKeysDict({’a’: 1, ’c’: 2, ’b’: 3, ’d’: 4})

>>> s.keys()

[’a’, ’b’, ’c’, ’d’]

>>> s.items()

[(’a’, 1), (’b’, 3), (’c’, 2), (’d’, 4)] Also implement doctest for the class.

Document it and extract the document with, e.g., pydoc

File reading and simple computing

Consider a file with the following matrix X:

1 2 3 4

Read and compute Y = 2 ∗X

Try also using the with statement in this case.

Project Euler

Project Euler is a website with mathematical problems that should/could be solved by computers.

Go to the Web-site and solve some of the prob using Python.

As an example the problem number 16 can be solved in one line of Python:

>>> sum(map(int, list(str(2**1000))))

1366

Encoding

UTF-8 encoding/UNICODE

In terms of UTF-8/UNICODE what is wrong with the following code:

Hint look at the word “na¨ıve”.

Make a correction.

See also:

UTF-8 encoding/UNICODE

Translate the AFINN sentiment word list with a language translation web service, — or perhaps just a part it — to a language you know and see if it works with with a couple of sentences.

Numerical python

File reading and simple computing

Consider a file with the following matrix X:

1 2 3 4

Read and compute Y = 2 ∗X now with NumPy!

Matrix rank

Compute the rank of the array:

>>> from numpy import *

>>> A = array([[1, 0], [0, 0]])

>>> rank(A) 2

Hmmmm ??? Not this one.

Find the matrix rank by computing the number of numerical non-zero singular values Function header:

def matrixrank(A, tol=None): """

Computes the matrix rank

>>> matrixrank(array([[1, 0], [0, 0]]))

1 """

Hint: use the svd function in numpy.linalg.

Statistical distributions

Generate 10’000 sets with 10 Gaussian distributed samples, square each element and sum over the 10 samples. Plot the histogram of the 10’000 sums together with the teoretically curve of the probability density function.

 PDF from the pdf() function in the scipy.stats.chi2 class

Coauthors

Read — a tab-separated file with co-author matrix. Find the author with most coauthoring.

Plot the largest connected component part of the network with NetworkX.

Text mining

Word and sentence segmentation

Segment the following short text into sentences and words:

>>> s = u"""DTU course 02820 is taught by Mr. Bartlomiej Wilkowski, Mr. Marcin Marek Szewczyk & Finn ˚Arup Nielsen, Ph.D. Some of aspects of the course are: machine learning and web 2.0. The telephone to Finn is (+45) 4525 3921, and his email is . A book published by O’Reilly called ’Programming Collective

Intelligence’ might be useful. It costs $39.99 or 285.00 kroner in Polyteknisk Boghandle. Is ’Text Processing in Python’ appropriate for the course? Perhaps! The constructor function in Python is called "__init__()". fMRI will not be a topic of the course."""

Try both with the re module as well as with a function from nltk.

Email mining

Change the feature set to less words or other words.

Code available here:

Web serving

Estimation web service

Create a web service that will take a series of numbers and model the data, e.g., with a linear model.

You can, e.g., use the below pointer for the class which makes the computation.

Pandas

“Assignment results” in Pandas

Read in the assignment results Excel sheets (available under File Sharing in CampusNet) with Pandas into several dataframes.

Aggregate the dataframe into one big dataframe.

Compute the correlation between the scores in “Score” columns.

Produce a table/matrix of scatter plots of the score results for the different.

Decouvrir ces documents

  • Learn EXCEL exercises with solutions

    Learn EXCEL exercises with solutions

  • Programming technique workbook learn to write a python script

    Programming technique workbook learn to write a python script

  • Building machine learning systems with python practical course

    Building machine learning systems with python practical course

  • Python gui programming using tkinter and python practical course

    Python gui programming using tkinter and python practical course

  • Detailed python coding interview questions and answers for programmers

    Detailed python coding interview questions and answers for programmers

  • PowerPoint exercises for high school students

    PowerPoint exercises for high school students

  • Advanced python programming tutorial with examples: functions

    Advanced python programming tutorial with examples: functions

  • Introduction to python programming for the absolute beginner: simulation and design

    Introduction to python programming for the absolute beginner: simulation and design

Articles connexes

  • Tuto Python & Scikit-learn : KNN (k-nearest neighbors)
  • Tuto Python & Scikit-learn : la régression logistique
  • Tuto Python & Scikit-learn : la régression linéaire
  • Tuto Python & Scikit-learn : les arbres de décision
  • Python, le meilleur langage pour l'analyse des données
  • Python: Tracer des formes géométriques cercle, carré et triangle
  • Tuto Python & Scikit-learn : réduction de dimensionnalité
  • Tuto Python & Scikit-learn: la classification Naïve Bayésienne
  • Contactez-nous
  • A propos de nous
  • On recrute
  • Rechercher dans le site
  • Politique de confidentialité
  • Droit d'auteur/Copyright
  • Conditions générales d'utilisation
  • Plan du site
  • Accueil
  • Blog
  • Finance et compta.
  • Formations Pro.
  • Logiciels & Apps
  • Organisation
  • Cours informatique
  • Aide à la rédaction
  • Etudes et Metiers
  • Science et Tech
  • Titans de la Tech
id 11354 02