<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:access="http://www.bloglines.com/about/specs/fac-1.0">
<access:restriction relationship="allow" />
<channel>
<title>Learn Python</title>
<link>http://learnpython.pbwiki.com/</link>
<description>How to learn Python - for beginners</description>
<language>en</language>
<image>
 <url>http://learnpython.pbwiki.com/feedlogo.gif</url>
 <title>PBwiki</title>
 <link>http://pbwiki.com/</link>
</image>
<generator>PBwiki 1.3.8</generator>
<webMaster>support@pbwiki.com</webMaster>
 <item>
  <title>TasksAdvanced</title>
  <link>http://learnpython.pbwiki.com/TasksAdvanced</link>
  <author>email.hidden@example.com (p)</author>
  <description><![CDATA[<h3>p edited <a href="http://learnpython.pbwiki.com/TasksAdvanced">TasksAdvanced</a></h3>
<span style="font-weight:bold;color:green;background-color:#cfc;">Guessing numbers ( mastermind )<br />Computer generates a number, player tries to guess it and computer answers<br />Enhancements:<br />program which plays game (tries to guess)<br />program which runs &quot;AI championship&quot; - program solutions of above point, even competition for best program<br />20 questions<br />You guess a thing/animal etc. Computer asks questions, you answer yes/no, until runs out of questions.<br />Enhancements:<br />If knowledgebase does not include correct answer, programs asks 'whats the difference' and extends knowledgebase<br />restructure knowledgebase<br />Simple AI problems<br />3 cannibals and 3 missionaries, or sheep, dog and hay: program searches through all possibilities, rejects invalid moves, finds all possible solution<br />Theseus<br />Generate labyrinth with one entrance, one exit, and one possible path (or path to center). Every cell needs be connected to path, many dead ends possible, but no &quot;closed islands&quot;.<br />Enhancements:<br />create program solving labyrinth<br />Generato</span>]]></description>
  <pubDate>Sun, 17 Aug 2008 10:41:05 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>RulesOfThumb</title>
  <link>http://learnpython.pbwiki.com/RulesOfThumb</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter edited <a href="http://learnpython.pbwiki.com/RulesOfThumb">RulesOfThumb</a></h3>
Variables:<br /> detailed).<span style="color:red;background-color:#fcc;"> But</span><span style="font-weight:bold;color:green;background-color:#cfc;"><br />But</span> don't use single-char<span style="color:red;background-color:#fcc;"> names:</span><span style="font-weight:bold;color:green;background-color:#cfc;"> names (they are hard to find/replace later if you need to):</span> use &quot;for ii in range(10)&quot; for loop where you don't care about the variable, but name it if you plan to use it.<br />]]></description>
  <pubDate>Wed, 13 Aug 2008 10:17:00 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>RulesOfThumb</title>
  <link>http://learnpython.pbwiki.com/RulesOfThumb</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter added <a href="http://learnpython.pbwiki.com/RulesOfThumb">RulesOfThumb</a></h3>
Variables:<br />
<br />
use variables whose name-length is proportional to the size of their scope: the longer the scope, the longer the name (more detailed). But don\'t use single-char names: use \"for ii in range(10)\" for loop where you don\'t care about the variable, but name it if you plan to use it.<br />
]]></description>
  <pubDate>Wed, 13 Aug 2008 10:16:18 +0000</pubDate>
  <category>add</category>
 </item>
 <item>
  <title>FrontPage</title>
  <link>http://learnpython.pbwiki.com/FrontPage</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter edited <a href="http://learnpython.pbwiki.com/FrontPage">FrontPage</a></h3>
Python Books - Books and tutorials for beginners and experienced programmers and other online and offline resources<br />PythonTricks - common mistakes and gotchas<br /><span style="font-weight:bold;color:green;background-color:#cfc;">RulesOfThumb -</span><br />Solving problems<br />RealLifeProblems - what problems real-life learners had, and how to fix them<br />]]></description>
  <pubDate>Wed, 13 Aug 2008 10:14:16 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>TasksAdvanced</title>
  <link>http://learnpython.pbwiki.com/TasksAdvanced</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter added <a href="http://learnpython.pbwiki.com/TasksAdvanced">TasksAdvanced</a></h3>
[http://groups.google.com/group/comp.lang.python/browse_thread/thread/99e43f326aaf93e5/ sudoku solvers]<br />
]]></description>
  <pubDate>Tue, 12 Aug 2008 15:49:40 +0000</pubDate>
  <category>add</category>
 </item>
 <item>
  <title>PythonSpeed</title>
  <link>http://learnpython.pbwiki.com/PythonSpeed</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter added <a href="http://learnpython.pbwiki.com/PythonSpeed">PythonSpeed</a></h3>
[http://groups.google.com/group/comp.lang.python/browse_thread/thread/df14a32d10432940/ how Python is compiled], differences from JVM and .NET - and python experts pwned by a troll :-)<br />
<br />
[http://groups.google.com/group/comp.lang.python/browse_thread/thread/cf5ab4fab83f7988/ different kinds of optimization]<br />
]]></description>
  <pubDate>Tue, 12 Aug 2008 15:48:39 +0000</pubDate>
  <category>add</category>
 </item>
 <item>
  <title>FrontPage</title>
  <link>http://learnpython.pbwiki.com/FrontPage</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter edited <a href="http://learnpython.pbwiki.com/FrontPage">FrontPage</a></h3>
Advanced topics<br />Assignment - CreateObject<br /><span style="font-weight:bold;color:green;background-color:#cfc;">PythonSpeed</span><br />MultipleInheritance - ClassTricks - ListTricks - FloatTricks - TuningTricks - DecoratorTricks<br />ErrorLogging - XML -<br />]]></description>
  <pubDate>Tue, 12 Aug 2008 15:18:58 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>DecoratorTricks</title>
  <link>http://learnpython.pbwiki.com/DecoratorTricks</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter added <a href="http://learnpython.pbwiki.com/DecoratorTricks">DecoratorTricks</a></h3>
[http://groups.google.com/group/comp.lang.python/browse_thread/thread/32b421bbe6caaeed/ decorator to auto-assign attributes in creator]<br />
<br />
----<br />
<br />
http://wiki.python.org/moin/PythonDecoratorLibrary<br />
]]></description>
  <pubDate>Tue, 12 Aug 2008 15:18:09 +0000</pubDate>
  <category>add</category>
 </item>
 <item>
  <title>FrontPage</title>
  <link>http://learnpython.pbwiki.com/FrontPage</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter edited <a href="http://learnpython.pbwiki.com/FrontPage">FrontPage</a></h3>
Advanced topics<br />Assignment - CreateObject<br /> -<span style="color:red;background-color:#fcc;"> TuningTricks</span><span style="font-weight:bold;color:green;background-color:#cfc;"> TuningTricks - DecoratorTricks</span><br />ErrorLogging - XML -<br />AppEngine<br />]]></description>
  <pubDate>Tue, 12 Aug 2008 14:38:00 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>CreateObject</title>
  <link>http://learnpython.pbwiki.com/CreateObject</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter added <a href="http://learnpython.pbwiki.com/CreateObject">CreateObject</a></h3>
[http://groups.google.com/group/comp.lang.python/browse_thread/thread/3fcb1673e25cdfe8/ explain __int__] <br />
<br />
obj3 = MyClass()<br />
<br />
(it\'s the () that creates the object, not the =) <br />
<br />
_ _new__ is the constructor: it creates the instance and returns it (overriding: advanced topic)<br />
<br />
Along the way, it calls _ _init__ on the *already-created* instance, to<br />
ask it to initialise itself ready for use. So, _ _init__ is an<br />
\"initialiser\" for the instance, used often. Rarely you override _ _new__, but customizing _ _init__ is common: http://www.python.org/doc/ref/customization.html<br />
<br />
    obj = mytype.__new__(*args, **kwds)<br />
    if isinstance(obj, mytype):<br />
        mytype.__init__(obj, *args, **kwds)<br />
    return obj <br />
<br />
Nevertheless, _ _init__ doesn\'t construct anything.  You can even call<br />
it to reinitialize an existing object.<br />
<br />
Also, how can a constructor require \'self\' as an argument...?<br />
_ _init__(self, ...)<br />
<br />
If the _ _init__ function is called by the constructor it cannot return a<br />
value.  However if cal]]></description>
  <pubDate>Tue, 05 Aug 2008 14:18:41 +0000</pubDate>
  <category>add</category>
 </item>
 <item>
  <title>FrontPage</title>
  <link>http://learnpython.pbwiki.com/FrontPage</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter edited <a href="http://learnpython.pbwiki.com/FrontPage">FrontPage</a></h3>
Tasks (or etudes, a term coined by excellend book EtudesforProgrammers, one of the best programming books ever, long time out of print) with glowing reviews<br />Advanced topics<br /><span style="color:red;background-color:#fcc;">ErrorLogging</span><span style="font-weight:bold;color:green;background-color:#cfc;">Assignment</span> -<span style="color:red;background-color:#fcc;"> XML - Assignment</span><span style="font-weight:bold;color:green;background-color:#cfc;"> CreateObject</span><br />MultipleInheritance - ClassTricks - ListTricks - FloatTricks - TuningTricks<br /><span style="font-weight:bold;color:green;background-color:#cfc;">ErrorLogging - XML -</span><br />AppEngine<br />Links, Feedback, question, suggestions, links<br />]]></description>
  <pubDate>Tue, 05 Aug 2008 14:02:45 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>Assignment</title>
  <link>http://learnpython.pbwiki.com/Assignment</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter edited <a href="http://learnpython.pbwiki.com/Assignment">Assignment</a></h3>
Since all &quot;variable&quot; names in Python are references to objects, anything accessed using a name is accessed by reference?<br />Anybody using the terms variable, reference or call-by-value is most likely explaining Python the wrong way<br /><span style="font-weight:bold;color:green;background-color:#cfc;">http://effbot.org/zone/python-objects.htm (name - binding to value of some type)<br />http://effbot.org/zone/call-by-object.htm - &quot;call by sharing&quot;</span><br />But you must be careful about what is meant by &quot;changes to parameters&quot;. Assigning a new value to a parameter name (inside the function, a parameter is just a local variable) does not change the original object--it only rebinds the local variable to a new object.<br />In the following function, a is rebound with an assignment statement, while b is mutated, i.e., changed, with an assignment statement.<br />]]></description>
  <pubDate>Tue, 05 Aug 2008 14:01:46 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>Assignment</title>
  <link>http://learnpython.pbwiki.com/Assignment</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter added <a href="http://learnpython.pbwiki.com/Assignment">Assignment</a></h3>
Since all \"variable\" names in Python are references to objects, anything accessed using a name is accessed by reference?<br />
<br />
Anybody using the terms variable, reference or call-by-value is most likely explaining Python the wrong way<br />
<br />
But you must be careful about what is meant by \"changes to parameters\". Assigning a new value to a parameter name (inside the function, a parameter is just a local variable) does not change the original object--it only rebinds the local variable to a new object.<br />
<br />
In the following function, a is rebound with an assignment statement, while b is mutated, i.e., changed, with an assignment statement.<br />
<br />
 def f(a, b):<br />
    a = 12<br />
    b.value = 14<br />
<br />
Argument a will never be changed, while argument b will be. Python\'s argument passing semantics are extremely simple. It\'s the assignment statement that\'s tricky: some assignments mutate/change objects, and some only rebind names.<br />
]]></description>
  <pubDate>Tue, 05 Aug 2008 13:38:00 +0000</pubDate>
  <category>add</category>
 </item>
 <item>
  <title>FrontPage</title>
  <link>http://learnpython.pbwiki.com/FrontPage</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter edited <a href="http://learnpython.pbwiki.com/FrontPage">FrontPage</a></h3>
Tasks (or etudes, a term coined by excellend book EtudesforProgrammers, one of the best programming books ever, long time out of print) with glowing reviews<br />Advanced topics<br /> XML<span style="color:red;background-color:#fcc;"> -</span><span style="font-weight:bold;color:green;background-color:#cfc;"> - Assignment</span><br />MultipleInheritance - ClassTricks - ListTricks - FloatTricks - TuningTricks<br />AppEngine<br />]]></description>
  <pubDate>Tue, 05 Aug 2008 13:34:38 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>TuningTricks</title>
  <link>http://learnpython.pbwiki.com/TuningTricks</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter added <a href="http://learnpython.pbwiki.com/TuningTricks">TuningTricks</a></h3>
[http://groups.google.com/group/comp.lang.python/browse_thread/thread/b3ded6d0f494d06/ from email list] optimizing histogram of numbers in huge file <br />
<br />
- wrap your code in a function. Functions run much faster in python than module level code, <br />
- look into using collections.defaultdict for histogram. A dictionary is a very appropriate way to store this data. numpy is good for processing numeric data once they are already in arrays, not for populating them. <br />
<br />
Both Python \"array.array\" and \"list\" are implemented as dyn arrays, not as C-like linked lists.<br />
]]></description>
  <pubDate>Tue, 05 Aug 2008 13:31:25 +0000</pubDate>
  <category>add</category>
 </item>
 <item>
  <title>FrontPage</title>
  <link>http://learnpython.pbwiki.com/FrontPage</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter edited <a href="http://learnpython.pbwiki.com/FrontPage">FrontPage</a></h3>
Advanced topics<br />ErrorLogging - XML -<br /> -<span style="color:red;background-color:#fcc;"> FloatTricks</span><span style="font-weight:bold;color:green;background-color:#cfc;"> FloatTricks - TuningTricks</span><br />AppEngine<br />Links, Feedback, question, suggestions, links<br />]]></description>
  <pubDate>Tue, 05 Aug 2008 12:48:40 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>TasksBeginners</title>
  <link>http://learnpython.pbwiki.com/TasksBeginners</link>
  <author>email.hidden@example.com (peter)</author>
  <description><![CDATA[<h3>peter edited <a href="http://learnpython.pbwiki.com/TasksBeginners">TasksBeginners</a></h3>
ProjectEuler - froms very simple, to quite tricky, math-based problems<br />Python Challenge - http://www.pythonchallenge.com/ is fun way to learn Python. Every solved task enables you to view next. Forums with hints.<br /><span style="font-weight:bold;color:green;background-color:#cfc;">forjava - but solve them in Python</span><br />]]></description>
  <pubDate>Fri, 18 Jul 2008 16:17:29 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>OtherLanguages</title>
  <link>http://learnpython.pbwiki.com/OtherLanguages</link>
  <author>email.hidden@example.com (p)</author>
  <description><![CDATA[<h3>p added <a href="http://learnpython.pbwiki.com/OtherLanguages">OtherLanguages</a></h3>
> What language is the best? Is there no clear answer?<br />
<br />
<br />
There cannot be clear answer because language you use to describe the solution influences your thinking about how to solve the problem, and what *is* the problem.<br />
<br />
Because the only way to express the solution is using a language, selecting a language determines patterns you will use to express the solution. Language changes your brain, your way of thinking.<br />
<br />
Only with a lot of skill and experience, when you can solve the problem using many different languages and approaches, you can understand how parts of your particular solution (expressed in a given language) relate to different solutions of the same problem expressed in different language.<br />
<br />
Only then you can transcendent (\"solve\") the question of language - and even then you cannot pass this knowledge and understanding to others, they have to gain insight by own efforts. A guru can hint, but it\'s the student who has to do the learning.<br />
<br />
Without this insight, answer is trivial \"it depe]]></description>
  <pubDate>Tue, 15 Jul 2008 17:22:44 +0000</pubDate>
  <category>add</category>
 </item>
 <item>
  <title>PaperBooks</title>
  <link>http://learnpython.pbwiki.com/PaperBooks</link>
  <author>email.hidden@example.com (p)</author>
  <description><![CDATA[<h3>p edited <a href="http://learnpython.pbwiki.com/PaperBooks">PaperBooks</a></h3>
Good Paper Books<br /><span style="font-weight:bold;color:green;background-color:#cfc;">Python books</span><br />PythonPocketReference - best spent $10 on a must-have book<br />LearningPython - 3nd edition, 2007<br />BeginningPython (From Novice to Professional series)<br />BeginningGameDevelopmentwithPythonandPygame (From Novice to Professional series)<br /><span style="font-weight:bold;color:green;background-color:#cfc;">Other good books<br />HeadFirstHTMLwithCSS&amp;XHTML<br />CSSPocketReference<br />JavaScriptPocketReference</span><br />]]></description>
  <pubDate>Sun, 29 Jun 2008 13:32:18 +0000</pubDate>
  <category>mod</category>
 </item>
 <item>
  <title>PaperBooks</title>
  <link>http://learnpython.pbwiki.com/PaperBooks</link>
  <author>email.hidden@example.com (p)</author>
  <description><![CDATA[<h3>p edited <a href="http://learnpython.pbwiki.com/PaperBooks">PaperBooks</a></h3>
PythonProgramming:AnIntroductiontoComputerScience used in MIT. It's intro to Comp Sci using Python, not strictly Python beginner book<br />PythonProgrammingfortheAbsoluteBeginner<br /><span style="color:red;background-color:#fcc;">BeginningPython:FromNovicetoProfessional</span><span style="font-weight:bold;color:green;background-color:#cfc;">BeginningPython (From Novice to Professional series)<br />BeginningGameDevelopmentwithPythonandPygame (From Novice to Professional series)</span><br />]]></description>
  <pubDate>Sun, 29 Jun 2008 13:23:07 +0000</pubDate>
  <category>mod</category>
 </item>
</channel>
</rss>
