Intermediate Python Workshop/Projects: Difference between revisions

no edit summary
imported>Jesstess
No edit summary
imported>Jesstess
No edit summary
 
(20 intermediate revisions by 2 users not shown)
Line 1:
<p style="background-color: #D7E0FA;"><font size="+2">Short link for this page: http://bit.ly/intermediate-python-projects</font></p>
 
== Write it from scratch ==
 
Practice solving problems in Python from scratch. These projects will guide you through breaking down the problem into steps and help you check your work along the way.
 
<table cellpadding="10">
* [[Scrabble challenge]]
<tr>
** <b>Project</b>: implement a scrabble solver that will tell you the best Scrabble words given a particular Scrabble rack. Great for cheating at Words with Friends!
<td>
** <b>Skills you'll practice</b>:
[[File:Scrabble.jpg|150px]]
*** breaking down a problem and solving it in Python from scratch
</td>
*** command line option parsing
<td>
*** reading from files
<font size="+1">[[Scrabble challenge]]</font>
*** working with dictionaries and for loops
* <b>Project</b>: implement a scrabble solver that will tell you the best Scrabble words given a particular Scrabble rack. Great for cheating at Words with Friends!
* [[Flash card challenge]]
* <b>Skills you'll practice</b>:
** <b>Project</b>: implement a flash card quizzer from scratch.
** breaking down a problem and solving it in Python from scratch
** <b>Skills you'll practice</b>:
** command line option parsing
*** breaking down a problem and solving it in Python from scratch
** reading from files
*** command line option parsing
** working with dictionaries and for loops
*** reading from files
</td>
*** working with dictionaries and while loops
</tr>
*** working with randomness
<tr>
<td>
[[File:Flashcards.jpg|150px]]
</td>
<td>
<font size="+1">[[Flash card challenge]]</font>
* <b>Project</b>: implement a flash card quizzer from scratch.
* <b>Skills you'll practice</b>:
** breaking down a problem and solving it in Python from scratch
** command line option parsing
** reading from files
** working with dictionaries and while loops
** working with randomness
</td>
</tr>
</table>
 
== BiteSelf-sizeddirected projects ==
 
Practice the language and practical Python applications through bite-sized projects where we've written the scaffolding for you so you can get to the fun stuff quickly!
 
<table cellpadding="10">
* [[Twitter]]
<tr>
** <b>Project</b>: Use the Twitter API to write the basic parts of a Twitter client. See what your friends are tweeting, get trending topics, search tweets, and more.
<td>
** <b>Skills you'll practice</b>:
[[File:Twitter.png|150px]]
*** using an API
</td>
*** command line option parsing
<td>
*** reading other people's code
<font size="+1">[[Twitter]]</font>
*** working with lists and iteration
* <b>Project</b>: Use the Twitter API to write the basic parts of a Twitter client. See what your friends are tweeting, get trending topics, search tweets, and more.
* [[ColorWall]]
* <b>Skills you'll practice</b>:
** <b>Project</b>: Program graphical effects for a ColorWall using the Tkinter GUI toolkit.
** using an API
** <b>Skills you'll practice</b>:
** command line option parsing
*** using functions and classes
*** reading other people's code
*** working with timelists and randomnessiteration
</td>
*** working with dictionaries and for loops
</tr>
<tr>
<td>
[[File:Colorwall_matrix.png|150px]]
</td>
<td>
<font size="+1">[[ColorWall]]</font>
* <b>Project</b>: Program graphical effects for a ColorWall.
* <b>Skills you'll practice</b>:
** using functions and classes
** reading other people's code
** working with time and randomness
** working with dictionaries and for loops
</td>
</tr>
<tr>
<td>
[[File:jeopardy_board.gif|150px]]
</td>
<td>
<font size="+1">[[JeopardyDatabase| Databases and Jeopardy]]</font>
* <b>Project</b>: learn how to get data from a database in Python while writing parts of a Jeopardy game, using real Jeopardy data!
* <b>Skills you'll practice</b>:
** the SQL database query language
** how to get data from a database in Python
</td>
</tr>
<tr>
<td>
[[File:grid.png|150px]]
</td>
<td>
<font size="+1">[[Matplotlib| Plotting data with matplotlib]]</font>
* <b>Project</b>: learn how to plot data with the matplotlib plotting library. Ditch Excel forever!
* <b>Skills you'll practice</b>:
** using the matplotlib Python plotting library to analyze data and generate graphs
** reading data from a file
</td>
</tr>
<tr>
<td>
[[File:Snakes.png|150px]]
</td>
<td>
<div id="pygame"></div>
<font size="+1">[[Snakes_Pygame| Make a graphical game with Pygame]]</font>
* <b>Project</b>: Add features to a Snakes game built in Pygame.
* <b>Skills you'll practice</b>:
** using the Pygame library
** using an event loop to make action happen
** manipulating images and sound in Python
</td>
</tr>
</table>
 
== Online tutorials ==
 
<table cellpadding="10">
* [[Make a website with Django]]
<tr>
** <b>Project</b>: Work through the official Django tutorial, where you'll create an interactive poll application.
<td>
** <b>Skills you'll practice</b>:
[[File:Django_pony.jpg|150px]]
*** using the Django web application framework
</td>
*** writing classes and thinking about inheritance
<td>
*** using Python to interact with a database
<font size="+1">[[Make a website with Django]]</font>
*** thinking about how web servers and clients interact
* <b>Project</b>: Work through the official Django tutorial, where you'll create an interactive poll application.
* <b>Skills you'll practice</b>:
** using the Django web application framework
** writing classes and thinking about inheritance
** using Python to interact with a database
** thinking about how web servers and clients interact
</td>
</tr>
</table>
 
<!--
== In-person tutorials ==
 
<table cellpadding="10">
* [[Object Oriented Python]]
<tr>
** <b>Project</b>: Create a mini-banking system with users and accounts.
<td>
** <b>Skills you'll practice</b>:
[[File:Money.jpg|150px]]
*** understanding classes and objects
</td>
*** building an entire program
<td>
<font size="+1">[[Object-oriented Python]]</font>
* <b>Project</b>: Create a mini-banking system with users and accounts.
* <b>Skills you'll practice</b>:
** understanding classes and objects
** building an entire program
</td>
</tr>
</table>
!-->
Anonymous user