﻿<?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>C++博客-sh19871122-随笔分类-Python</title><link>http://www.cppblog.com/sh19871122/category/20780.html</link><description /><language>zh-cn</language><lastBuildDate>Sun, 18 May 2014 13:25:53 GMT</lastBuildDate><pubDate>Sun, 18 May 2014 13:25:53 GMT</pubDate><ttl>60</ttl><item><title>kivy的第一步------安装，与IDEA共同开发</title><link>http://www.cppblog.com/sh19871122/archive/2014/05/18/207008.html</link><dc:creator>Hallelujah</dc:creator><author>Hallelujah</author><pubDate>Sun, 18 May 2014 12:35:00 GMT</pubDate><guid>http://www.cppblog.com/sh19871122/archive/2014/05/18/207008.html</guid><wfw:comment>http://www.cppblog.com/sh19871122/comments/207008.html</wfw:comment><comments>http://www.cppblog.com/sh19871122/archive/2014/05/18/207008.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/sh19871122/comments/commentRss/207008.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/sh19871122/services/trackbacks/207008.html</trackback:ping><description><![CDATA[环境：Windows 7 64bits，IDE:IntelliJ IDEA 13.1.2<br />安装kivy：1. 下载安装包http://kivy.org/#download，我使用的是Python 2.7.6，选择的2.7版本（注意此版本是32位Python）<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2. 解压到一个目录，我在我的系统环境变量中将根目录命名为了KIVY_ROOT<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3. 虽然kivy中自带了Python的，可以直接使用，也可以自己安装，我是自己下载的Python 2.7.6（记得一定是32位，不然后面写程序会出问题）<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 4. 如果机器以前没安装git的，可以直接使用KIVY中带的mingw，我自己机器安装了git，所以环境变量就没设置mingw的<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 5. 设置环境变量，GST_REGISTRY=%KIVY_ROOT%gstreamer\registry.bin<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;GST_PLUGIN_PATH=%KIVY_ROOT%gstreamer\lib\gstreamer-1.0<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; PATH变量中加入了%KIVY_ROOT%;%KIVY_ROOT%tools;%KIVY_ROOT%gstreamer\bin;（还有Python的mingw的）<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 最后，需要在PYTHONPATH中加入%KIVY_ROOT%kivy<br />最后写入第一个程序来测试：<br />代码如下<br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080; ">&nbsp;1</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;2</span>&nbsp;<span style="color: #008000; ">#</span><span style="color: #008000; ">&nbsp;-*-&nbsp;coding:utf-8&nbsp;-*-</span><span style="color: #008000; "><br /></span><span style="color: #008080; ">&nbsp;3</span>&nbsp;<span style="color: #008000; ">#</span><span style="color: #008000; ">/user/bin/env&nbsp;python</span><span style="color: #008000; "><br /></span><span style="color: #008080; ">&nbsp;4</span>&nbsp;<span style="color: #008000; "></span><br /><span style="color: #008080; ">&nbsp;5</span>&nbsp;<span style="color: #800080; ">__author__</span>&nbsp;=&nbsp;<span style="color: #800000; ">'</span><span style="color: #800000; ">shih</span><span style="color: #800000; ">'</span><br /><span style="color: #008080; ">&nbsp;6</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;7</span>&nbsp;<span style="color: #0000FF; ">from</span>&nbsp;kivy.app&nbsp;<span style="color: #0000FF; ">import</span>&nbsp;App<br /><span style="color: #008080; ">&nbsp;8</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;9</span>&nbsp;<span style="color: #0000FF; ">class</span>&nbsp;Hello(App):<br /><span style="color: #008080; ">10</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">pass</span><br /><span style="color: #008080; ">11</span>&nbsp;<br /><span style="color: #008080; ">12</span>&nbsp;<span style="color: #0000FF; ">if</span>&nbsp;<span style="color: #800080; ">__name__</span>&nbsp;==&nbsp;<span style="color: #800000; ">"</span><span style="color: #800000; ">__main__</span><span style="color: #800000; ">"</span>:<br /><span style="color: #008080; ">13</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Hello().run()</div>执行结果如下：<br /><img src="http://www.cppblog.com/images/cppblog_com/sh19871122/kivy_hello.png" width="1306" height="672" alt="" /><br /><br /><img src ="http://www.cppblog.com/sh19871122/aggbug/207008.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/sh19871122/" target="_blank">Hallelujah</a> 2014-05-18 20:35 <a href="http://www.cppblog.com/sh19871122/archive/2014/05/18/207008.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Python特殊方法的操作符重载表</title><link>http://www.cppblog.com/sh19871122/archive/2014/04/14/206575.html</link><dc:creator>Hallelujah</dc:creator><author>Hallelujah</author><pubDate>Mon, 14 Apr 2014 03:38:00 GMT</pubDate><guid>http://www.cppblog.com/sh19871122/archive/2014/04/14/206575.html</guid><wfw:comment>http://www.cppblog.com/sh19871122/comments/206575.html</wfw:comment><comments>http://www.cppblog.com/sh19871122/archive/2014/04/14/206575.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/sh19871122/comments/commentRss/206575.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/sh19871122/services/trackbacks/206575.html</trackback:ping><description><![CDATA[<div>不知道里面怎么弄表格，就上传图片了<br /><img src="http://www.cppblog.com/images/cppblog_com/sh19871122/Python语言杂项.png" width="936" height="993" alt="" /><br />如果用户自定义的类，想有add功能，如果类没提供__add__或__radd__方法的话，会抛出异常<br />再如，if xxxobj:默认是如果xxxobj不是None则为True，否则为False，如果不是这个逻辑则可以通过实现__bool__方法(自己的测试中2.7需要再加上__nonzero__()方法，3.2中直接就行)<br /><br /></div><img src ="http://www.cppblog.com/sh19871122/aggbug/206575.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/sh19871122/" target="_blank">Hallelujah</a> 2014-04-14 11:38 <a href="http://www.cppblog.com/sh19871122/archive/2014/04/14/206575.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Python的参数解包小技巧（使用容器作为参数时）</title><link>http://www.cppblog.com/sh19871122/archive/2013/12/31/205078.html</link><dc:creator>Hallelujah</dc:creator><author>Hallelujah</author><pubDate>Tue, 31 Dec 2013 03:07:00 GMT</pubDate><guid>http://www.cppblog.com/sh19871122/archive/2013/12/31/205078.html</guid><wfw:comment>http://www.cppblog.com/sh19871122/comments/205078.html</wfw:comment><comments>http://www.cppblog.com/sh19871122/archive/2013/12/31/205078.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/sh19871122/comments/commentRss/205078.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/sh19871122/services/trackbacks/205078.html</trackback:ping><description><![CDATA[<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #008080; ">&nbsp;1</span>&nbsp;<span style="color: #0000FF; ">def</span>&nbsp;args_unpacking_test(x,&nbsp;y):<br /><span style="color: #008080; ">&nbsp;2</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0000FF; ">print</span>&nbsp;<span style="color: #800000; ">'</span><span style="color: #800000; ">x&nbsp;=&nbsp;</span><span style="color: #800000; ">'</span>,&nbsp;x,&nbsp;<span style="color: #800000; ">'</span><span style="color: #800000; ">&nbsp;y&nbsp;=&nbsp;</span><span style="color: #800000; ">'</span>,&nbsp;y<br /><span style="color: #008080; ">&nbsp;3</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;4</span>&nbsp;A&nbsp;=&nbsp;namedtuple(<span style="color: #800000; ">'</span><span style="color: #800000; ">A</span><span style="color: #800000; ">'</span>,&nbsp;<span style="color: #800000; ">'</span><span style="color: #800000; ">y&nbsp;x</span><span style="color: #800000; ">'</span>)<br /><span style="color: #008080; ">&nbsp;5</span>&nbsp;<br /><span style="color: #008080; ">&nbsp;6</span>&nbsp;list_foo&nbsp;=&nbsp;[3,&nbsp;4]<br /><span style="color: #008080; ">&nbsp;7</span>&nbsp;tuple_foo&nbsp;=&nbsp;(3,&nbsp;4)<br /><span style="color: #008080; ">&nbsp;8</span>&nbsp;ntuple_foo&nbsp;=&nbsp;A(4,&nbsp;3)<br /><span style="color: #008080; ">&nbsp;9</span>&nbsp;dict_foo&nbsp;=&nbsp;{<span style="color: #800000; ">'</span><span style="color: #800000; ">y</span><span style="color: #800000; ">'</span>:4,&nbsp;<span style="color: #800000; ">'</span><span style="color: #800000; ">x</span><span style="color: #800000; ">'</span>:3}<br /><span style="color: #008080; ">10</span>&nbsp;<br /><span style="color: #008080; ">11</span>&nbsp;<br /><span style="color: #008080; ">12</span>&nbsp;args_unpacking_test(*list_foo)<br /><span style="color: #008080; ">13</span>&nbsp;args_unpacking_test(*tuple_foo)<br /><span style="color: #008080; ">14</span>&nbsp;args_unpacking_test(*ntuple_foo)<br /><span style="color: #008080; ">15</span>&nbsp;args_unpacking_test(**dict_foo)<br /><span style="color: #008080; ">16</span>&nbsp;<br /><span style="color: #008080; ">17</span>&nbsp;他们的结果输出都是一样的<br /><br />这个方式处理非常有用，如果参数个数不一致的话会报错</div><img src ="http://www.cppblog.com/sh19871122/aggbug/205078.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/sh19871122/" target="_blank">Hallelujah</a> 2013-12-31 11:07 <a href="http://www.cppblog.com/sh19871122/archive/2013/12/31/205078.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>