﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-非淡泊无以明志，非宁静无以致远--Stay Hungry, Stay Foolish-随笔分类-Python</title><link>http://www.blogjava.net/jicheng687/category/48853.html</link><description>SET, Python, Java, DB, Arch</description><language>zh-cn</language><lastBuildDate>Sat, 13 Aug 2011 11:15:42 GMT</lastBuildDate><pubDate>Sat, 13 Aug 2011 11:15:42 GMT</pubDate><ttl>60</ttl><item><title>【转】Python的标准logging模块</title><link>http://www.blogjava.net/jicheng687/archive/2011/08/12/356373.html</link><dc:creator>步步为营</dc:creator><author>步步为营</author><pubDate>Fri, 12 Aug 2011 06:49:00 GMT</pubDate><guid>http://www.blogjava.net/jicheng687/archive/2011/08/12/356373.html</guid><wfw:comment>http://www.blogjava.net/jicheng687/comments/356373.html</wfw:comment><comments>http://www.blogjava.net/jicheng687/archive/2011/08/12/356373.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jicheng687/comments/commentRss/356373.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jicheng687/services/trackbacks/356373.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Programmers can configure logging either by creating loggers, handlers, and formatters explicitly in a main module with the configuration methods listed above (using Python code), or by creating a logging config file. The following code is an example of configuring a very simple logger, a console handler, and a simple formatter in a Python module:<br><br>&nbsp;&nbsp;<a href='http://www.blogjava.net/jicheng687/archive/2011/08/12/356373.html'>阅读全文</a><img src ="http://www.blogjava.net/jicheng687/aggbug/356373.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jicheng687/" target="_blank">步步为营</a> 2011-08-12 14:49 <a href="http://www.blogjava.net/jicheng687/archive/2011/08/12/356373.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Special Methods for Customizing Classes</title><link>http://www.blogjava.net/jicheng687/archive/2011/07/21/354826.html</link><dc:creator>步步为营</dc:creator><author>步步为营</author><pubDate>Thu, 21 Jul 2011 15:25:00 GMT</pubDate><guid>http://www.blogjava.net/jicheng687/archive/2011/07/21/354826.html</guid><wfw:comment>http://www.blogjava.net/jicheng687/comments/354826.html</wfw:comment><comments>http://www.blogjava.net/jicheng687/archive/2011/07/21/354826.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jicheng687/comments/commentRss/354826.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jicheng687/services/trackbacks/354826.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: C.__init__(self[, arg1, ...] )<br> Constructor (with any optional arguments)<br> <br>C.__new__(self[, arg1, ...] )[a]<br> Constructor (with any optional argu ments); usually used for setting up subclassing of immutable data types<br> <br>C.__del__(self)<br> Destructor<br> <br>C.__str__(self)<br> Printable string representation; str() built-in and print statement<br> <br>C.__repr__(self)<br> Evaluatable string representation; repr() built-in and '' operator<br> <br>&nbsp;&nbsp;<a href='http://www.blogjava.net/jicheng687/archive/2011/07/21/354826.html'>阅读全文</a><img src ="http://www.blogjava.net/jicheng687/aggbug/354826.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jicheng687/" target="_blank">步步为营</a> 2011-07-21 23:25 <a href="http://www.blogjava.net/jicheng687/archive/2011/07/21/354826.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>学习Python的好网站</title><link>http://www.blogjava.net/jicheng687/archive/2011/06/17/352541.html</link><dc:creator>步步为营</dc:creator><author>步步为营</author><pubDate>Fri, 17 Jun 2011 12:26:00 GMT</pubDate><guid>http://www.blogjava.net/jicheng687/archive/2011/06/17/352541.html</guid><wfw:comment>http://www.blogjava.net/jicheng687/comments/352541.html</wfw:comment><comments>http://www.blogjava.net/jicheng687/archive/2011/06/17/352541.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/jicheng687/comments/commentRss/352541.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jicheng687/services/trackbacks/352541.html</trackback:ping><description><![CDATA[<div>1)<a href="http://www.pythonchallenge.com/">http://www.pythonchallenge.com/</a><br />&nbsp; 提供了不同level的Python题目，非常有趣的题目。做完一题后，把URL中的pc改为pcc可以看到上一题的答案<br /><br />2)<span lang="EN-US"><a href="http://projecteuler.net/">http://projecteuler.net/</a></span><br />&nbsp; 里面有200多道题目，不要要求提交代码，只要最终答案，提供用各种语言来解决问题。这里（<a href="http://dcy.is-programmer.com/posts/8750.html">http://dcy.is-programmer.com/posts/8750.html</a>）有部分题目的答案<br /><br />非常好玩，有兴趣的朋友，快来试试吧<br />
<p>看看 project euler 的第一道题：</p>
<p>If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23. Find the sum of all the multiples of 3 or 5 below 1000.</p>
<p>用 python 语言写出来是：</p>
<p>&nbsp;</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #0000ff">print</span><span style="color: #000000">&nbsp;sum(i&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;i&nbsp;</span><span style="color: #0000ff">in</span><span style="color: #000000">&nbsp;xrange(</span><span style="color: #000000">1</span><span style="color: #000000">,&nbsp;</span><span style="color: #000000">1000</span><span style="color: #000000">)&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;i&nbsp;</span><span style="color: #000000">%</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">3</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">==</span><span style="color: #000000">&nbsp;0&nbsp;</span><span style="color: #0000ff">or</span><span style="color: #000000">&nbsp;i&nbsp;</span><span style="color: #000000">%</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">5</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">==</span><span style="color: #000000">&nbsp;0)</span></div>
<p>&nbsp;</p>
<p><br />&nbsp;</p></div><img src ="http://www.blogjava.net/jicheng687/aggbug/352541.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jicheng687/" target="_blank">步步为营</a> 2011-06-17 20:26 <a href="http://www.blogjava.net/jicheng687/archive/2011/06/17/352541.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Python中的Closure</title><link>http://www.blogjava.net/jicheng687/archive/2011/06/15/352324.html</link><dc:creator>步步为营</dc:creator><author>步步为营</author><pubDate>Tue, 14 Jun 2011 23:31:00 GMT</pubDate><guid>http://www.blogjava.net/jicheng687/archive/2011/06/15/352324.html</guid><wfw:comment>http://www.blogjava.net/jicheng687/comments/352324.html</wfw:comment><comments>http://www.blogjava.net/jicheng687/archive/2011/06/15/352324.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/jicheng687/comments/commentRss/352324.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/jicheng687/services/trackbacks/352324.html</trackback:ping><description><![CDATA[<p><br />#定义：如果在一个内部函数里，对在外部作用域（但不是在全局作用域）的变量进行引用，那么内部函数就被认为是闭包（closure）<br />分解来说，包含下面3个条件：<br />1) 需要函数嵌套, 就是一个函数里面再写一个函数.<br />2) 外部函数需要返回一个内部函数的引<br />3) 外部函数中有一些局部变量, 并且, 这些局部变量在内部函数中有使用<br />一些概念:<br />1)自由变量: 外部函数中定义的局部变量, 并且在内部函数中被使用<br />2) 闭包: 那个使用了自由变量并被返回的内部函数就称为闭包<br /></p>
<p>#支持闭包的语言有这样的特性：<br />1)函数是一阶值（First-class value），即函数可以作为另一个函数的返回值或参数，还可以作为一个变量的值<br />2)函数可以嵌套定义，即在一个函数内部可以定义另一个函数<br /><br />#代码示例</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080">&nbsp;1</span><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><span style="color: #0000ff">def</span><span style="color: #000000">&nbsp;counter(start_at</span><span style="color: #000000">=</span><span style="color: #000000">0):<br /></span><span style="color: #008080">&nbsp;2</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;count&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;[start_at]<br /></span><span style="color: #008080">&nbsp;3</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">def</span><span style="color: #000000">&nbsp;incr():<br /></span><span style="color: #008080">&nbsp;4</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count[0]&nbsp;</span><span style="color: #000000">+=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">1</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">#</span><span style="color: #008000">对局部变量的引用</span><span style="color: #008000"><br /></span><span style="color: #008080">&nbsp;5</span><span style="color: #008000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;count[0]<br /></span><span style="color: #008080">&nbsp;6</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;incr&nbsp;&nbsp;</span><span style="color: #008000">#</span><span style="color: #008000">返回一个函数对象</span><span style="color: #008000"><br /></span><span style="color: #008080">&nbsp;7</span><span style="color: #008000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span><span style="color: #000000"><br /></span><span style="color: #008080">&nbsp;8</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /><br /></span><span style="color: #008080">&nbsp;9</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;</span><span style="color: #800080">__name__</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">==</span><span style="color: #000000">&nbsp;</span><span style="color: #800000">'</span><span style="color: #800000">__main__</span><span style="color: #800000">'</span><span style="color: #000000">:<br /></span><span style="color: #008080">10</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;c&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;counter(</span><span style="color: #000000">3</span><span style="color: #000000">)<br /></span><span style="color: #008080">11</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">print</span><span style="color: #000000">&nbsp;type(c)<br /></span><span style="color: #008080">12</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">print</span><span style="color: #000000">&nbsp;c()<br /></span><span style="color: #008080">13</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">print</span><span style="color: #000000">&nbsp;c()<br /></span><span style="color: #008080">14</span><span style="color: #000000"><img alt="" align="top" src="http://www.blogjava.net/images/OutliningIndicators/None.gif" /></span></div>
<p><br />&nbsp;</p><img src ="http://www.blogjava.net/jicheng687/aggbug/352324.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/jicheng687/" target="_blank">步步为营</a> 2011-06-15 07:31 <a href="http://www.blogjava.net/jicheng687/archive/2011/06/15/352324.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>