{"id":525,"date":"2014-11-22T23:34:00","date_gmt":"2014-11-22T15:34:00","guid":{"rendered":"http:\/\/note.systw.net\/note\/?p=525"},"modified":"2023-11-03T23:38:06","modified_gmt":"2023-11-03T15:38:06","slug":"python%e6%91%98%e8%a6%81","status":"publish","type":"post","link":"https:\/\/systw.net\/note\/archives\/525","title":{"rendered":"Python\u6458\u8981"},"content":{"rendered":"\n<p>python<\/p>\n\n\n\n<p>\u7f3a\u9ede:\u57f7\u884c\u6548\u80fd\u8f03\u6162<br>\u512a\u9ede:\u7a0b\u5f0f\u7de8\u6392\u65b9\u6cd5\u4e00\u81f4<\/p>\n\n\n\n<p>refer<br>http:\/\/code.google.com\/p\/using-python\/wiki\/Welcome<br>http:\/\/zh.wikipedia.org\/wiki\/Python<br>http:\/\/pydoing.blogspot.tw\/2012\/12\/Python-Guide.html<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;<\/p>\n\n\n\n<p><strong>Install on linux<\/strong><br>1<br>download from www.python.org<br>2<br>\u5b89\u88c5<br>#.\/configure &#8211;prefix=\/usr\/local\/python<br>#make<br>#make install<br>3<br>\u8a2d\u5b9a\u8def\u5f91<br>#mv \/usr\/bin\/python \/usr\/bin\/python.bak<br>#ln -sf \/usr\/local\/python\/bin\/python \/usr\/bin\/python<\/p>\n\n\n\n<p>refer<br>http:\/\/code.google.com\/p\/using-python\/wiki\/Installation<br>&#8230;&#8230;&#8230;&#8230;&#8230;.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u6307\u4ee4<\/strong><\/h2>\n\n\n\n<p><strong>\u9032\u5165IDLE(\u4e92\u52d5\u6a21\u5f0f)<\/strong><br>#python<br>Python 2.7.3 (default, Sep 26 2013, 20:08:41)<br>[GCC 4.6.3] on linux<br>Type &#8220;help&#8221;, &#8220;copyright&#8221;, &#8220;credits&#8221; or &#8220;license&#8221; for more information.<br>&gt;&gt;&gt;<\/p>\n\n\n\n<p><br><strong>\u57f7\u884cpython script<\/strong><br>#python &lt; python script &gt;<br>ex:<br>#vi hello.py<br>#!\/usr\/bin\/env python<br>print \u2018hello world&#8217;<\/p>\n\n\n\n<p><br>ps:<br>\u5ffd\u7565warnning message<br>#python -W ignore &lt; python script&gt;<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;<\/p>\n\n\n\n<p><strong>\u6ce8\u610f\u4e8b\u9805<\/strong><\/p>\n\n\n\n<p>indentation:\u5728Python\u4e2d\u4e0d\u53ef\u96a8\u610f\u7e2e\u6392\uff0c\u56e0\u70ba\u7e2e\u6392\u662fPython\u5283\u5206\u7a0b\u5f0f\u5340\u584a\u7684\u65b9\u5f0f<br>ex:<br>\u4ee5\u4e0b\u57f7\u884c\u6642\u6703\u767c\u751f\u932f\u8aa4<br>a = 1<br>print(a)<br>a = 3<br>print(a)<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u57fa\u672c\u64cd\u4f5c<\/h2>\n\n\n\n<p><strong>\u8b8a\u6578<br><\/strong>1.case-sensitive(\u5927\u5c0f\u5beb\u6709\u5225)<br>2.\u53ef\u4e00\u6b21\u6307\u5b9a\u591a\u500b\u8b8a\u6578\u7684\u503c<br>ex:<br>m, n = 5, 6<br>3.\u6e05\u9664\u8b8a\u6578\u65b9\u6cd5\u67092\u7a2e<br>var = None<br>del var<br>4.\u5efa\u7acb\u6642\u81ea\u52d5\u5ba3\u544a\u8b8a\u6578\u7bc4\u570d<br>ex:<br>x = 10 # x\u7684\u7bc4\u570d\u662f\u5168\u57df<br>def outer():<br>&nbsp; y = 20 # y\u7684\u7bc4\u570d\u662f\u5728outer() \u51fd\u5f0f\u5167<br>5\u624b\u52d5\u8a2d\u5b9a\u8b8a\u6578\u7bc4\u570d<br>\u5ba3\u544a\u975e\u5168\u57df\u8b8a\u6578<br>nonlocal<br>\u5ba3\u544a\u5168\u57df\u8b8a\u6578<br>gobal<\/p>\n\n\n\n<p><br><strong>\u6d41\u7a0b\u63a7\u5236<\/strong><\/p>\n\n\n\n<p><strong>while<\/strong><br>while &lt; condietion&gt;:<br>\u3000&lt; statement&gt;<\/p>\n\n\n\n<p>\u61c9\u7528<br>i = 10 # \u8a2d\u5b9a\u63a7\u5236\u8b8a\u6578<br>while i &gt; 0:<br>\u3000# \u8ff4\u5708\u5de5\u4f5c\u5340<br>\u3000print(i)<br>\u3000i -= 1 # \u8abf\u6574\u63a7\u5236\u8b8a\u6578\u503c<\/p>\n\n\n\n<p>ex:<br>len = 10<br>while i &gt; len:<br>\u3000i+=1<br>\u3000print(i)<\/p>\n\n\n\n<p>&#8230;<\/p>\n\n\n\n<p><strong>for<\/strong><br>for &lt; target&gt; in &lt; range or array&gt;:<br>\u3000&lt; statement&gt;<\/p>\n\n\n\n<p>\u61c9\u7528<br>i = 10 # \u8a2d\u5b9a\u63a7\u5236\u8b8a\u6578<br>for i in range(10, 0, -1):<br>\u3000print(i)<\/p>\n\n\n\n<p>ex:<br>list1=[1,5,3,2]<br>for x in list1:<br>&nbsp; print(x)<\/p>\n\n\n\n<p>&#8230;<\/p>\n\n\n\n<p><strong>if<\/strong><br>if &lt; condietion&gt;:<br>&nbsp; &lt; statement&gt;<br>elif:<br>&nbsp; &lt; statement&gt;<br>else:<br>&nbsp; &lt; statement&gt;<\/p>\n\n\n\n<p>ex:<br>\u5224\u65b7\u5b57\u4e32\u4e2d\u662f\u5426\u6709&#8221;-&#8220;<br>if \u2018-&#8216; in string:<br>&nbsp; print \u2018string include -&#8216;<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..<\/p>\n\n\n\n<p><strong>import<\/strong><br>\u8f09\u5165library module,\u6709\u5169\u7a2e\u8f09\u5165\u65b9\u6cd5\uff0c\u5982\u4e0b<\/p>\n\n\n\n<p><strong>import &lt; module&gt;<\/strong><br>ex:<br>\u8f09\u5165sys\u6a21\u7d44<br>import sys<br>print sys.argv, sys.path<br>ps:<br><strong>import &lt; module&gt; as &lt; short name&gt;<\/strong><br>\u8f09\u5165module\u5f8c\u53e6\u6307\u5b9a\u5225\u540d<br>ex:<br>import numpy as np<\/p>\n\n\n\n<p><strong>from &lt; module&gt; import &lt; function&gt;<\/strong><br>ex:<br>\u8f09\u5165sys\u6a21\u7d44\u5167argv,path\u5169\u500b\u529f\u80fd<br>from sys import argv,path<br>print argv, path<br>ps:<br>\u8f09\u5165sys\u6a21\u7d44\u5167\u6240\u6709\u529f\u80fd<br>from sys import *<br>print argv, path<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;.<\/p>\n\n\n\n<p><strong>try and except<\/strong><br>\u7a0b\u5f0f\u6b63\u5e38\u904b\u4f5c\u6642,\u6703\u57f7\u884ctry\u7684\u5340\u57df<br>\u82e5\u7a0b\u5f0f\u904b\u4f5c\u767c\u751f\u4f8b\u5916\u72c0\u6cc1,\u5c31\u6703\u57f7\u884cexcept\u7684\u5340\u57df<\/p>\n\n\n\n<p>ex:<br>a = 22<br>b = 33<br><br>try:<br>&nbsp; if a &gt; b:<br>&nbsp; &nbsp; print(n)<br>except:<br>&nbsp; print(&#8220;except&#8221;)<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;.<\/p>\n\n\n\n<p><strong>\u5b9a\u7fa9\u51fd\u6578<\/strong><br>\u4f7f\u7528def+\u4e00\u500b\u7a7a\u683c+\u51fd\u6578\u540d\u7a31\u8207\u5c0f\u62ec\u5f27+\u5192\u865f<\/p>\n\n\n\n<p><strong>\u56de\u50b3\u4e00\u500b\u503c<\/strong><br>def big(a, b):<br>\u3000if a &gt; b:<br>&nbsp;&nbsp; \u3000 return a<br>\u3000else:<br>\u3000\u3000return b<br>print(big(33, 22))<\/p>\n\n\n\n<p><strong>\u56de\u50b3\u591a\u503c<\/strong><br>def select_choice():<br>&#8230;<br>\u3000return (i, card)<\/p>\n\n\n\n<p>my_i, my_card = select_choice()<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u65b0\u589e\u6a21\u7d44<\/strong><\/h2>\n\n\n\n<p>1<br><strong>#mkdir moduletest<br>#cd moduletest<br>#vi moduletest.py<\/strong><br>def printhello():<br>\u3000print \u2018hello&#8217;<\/p>\n\n\n\n<p>2\u7de8\u8f2fmetadata<br><strong>#vi setup.py<\/strong><br>from distutils.core import setup<br>setup(<br>\u3000name=&#8217;moduletest&#8217;,<br>\u3000version =&#8217;1.0.0&#8242;,<br>\u3000py_modules=[\u2018moduletest&#8217;],<br>\u3000author=&#8217;raymond&#8217;,<br>\u3000author_email=&#8217;ray@systw.net&#8217;,<br>\u3000url=&#8217;systw.net&#8217;,<br>\u3000description =&#8217;for test&#8217;<\/p>\n\n\n\n<p>3\u5efa\u69cb\u8207\u5b89\u88dd<br><strong>#python setup.py sdist<br>#python setup.py install<\/strong><\/p>\n\n\n\n<p>4\u4f7f\u7528module<br><strong>#vi usemodule.py<\/strong><br>import moduletest<br>moduletest.printhello()<\/p>\n\n\n\n<p>..<\/p>\n\n\n\n<p><strong>\u66f4\u65b0\u6a21\u7d44<\/strong><br>1.<br><strong>#vi setup.py<\/strong><br>&#8230;omit&#8230;<br>version =&#8217;1.1.0&#8242;,<br>&#8230;omit&#8230;<\/p>\n\n\n\n<p>2<br><strong>#python setup.py sdist upload<\/strong><\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u5e38\u898b\u932f\u8aa4<\/strong><\/h2>\n\n\n\n<p><strong>no display name<\/strong><br>ex:<br>Traceback (most recent call last):<br>&#8230;omit&#8230;<br>_tkinter.TclError: no display name and no $DISPLAY environment variabl<br>solve:<br>\u57f7\u884cexport DISPLAY=localhost:0<\/p>\n\n\n\n<p><br><strong>IndentationError<\/strong><br>ex:<br>File &#8220;pcashow.py&#8221;, line 13<br>pl.scatter(data[target == i, 0], data[target == i, 1],<br>^<br>IndentationError: expected an indented block<br>solve:<br>\u7e2e\u6392\u8abf\u597d<\/p>\n\n\n\n<p><br>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>\u5957\u4ef6\u7ba1\u7406<\/strong><\/h2>\n\n\n\n<p><strong>\u5e38\u898b\u7684\u5957\u4ef6\u5b89\u88dd<\/strong><br>1.\u5230\u5957\u4ef6\u5e95\u4e0b\u6aa2\u67e5\u662f\u5426\u6709setup.py<br>2.\u57f7\u884cpython setup.py install<\/p>\n\n\n\n<p><br><strong>\u5957\u4ef6\u7ba1\u7406\u5de5\u5177<\/strong><br>\u8b93Python\u5b89\u88dd\u6a21\u7d44\u6642\u8b8a\u5f97\u5f88\u7c21\u55ae<br>\u5e38\u898b\u7684\u6709\u4ee5\u4e0b<br>&nbsp; easy_install<br>&nbsp; pip<\/p>\n\n\n\n<p>&#8230;<\/p>\n\n\n\n<p><strong>easy_install<\/strong><br>\u652f\u63f4egg\u683c\u5f0f\u5b89\u88dd<br><br>linux \u5b89\u88dd<br>#yum install python-setuptools<\/p>\n\n\n\n<p>windows\u5b89\u88dd<br>1<br>download<br>http:\/\/pypi.python.org\/pypi\/setuptools<br>2<br>install<br># python ez_setup.py<br>ps<br>Windows\u53ef\u4f7f\u7528setuptools-x.x.win32-py2.x.exe\u76f4\u63a5\u5b89\u88dd<\/p>\n\n\n\n<p>&#8230;<\/p>\n\n\n\n<p><strong>pip<\/strong><br>\u985e\u4f3ceasy_install\uff0c\u6709\u4e9b\u4f5c\u696d\u7cfb\u7d71\u5df2\u7d93\u5167\u5efa\u4e86<\/p>\n\n\n\n<p>\u5b89\u88dd\u65b9\u6cd51<br># curl http:\/\/python-distribute.org\/distribute_setup.py | python<br># curl https:\/\/raw.github.com\/pypa\/pip\/master\/contrib\/get-pip.py | python<\/p>\n\n\n\n<p>\u5b89\u88dd\u65b9\u6cd52( \u7528easy_install)<br># easy_install pip<\/p>\n\n\n\n<p><br>refer<br>http:\/\/www.openfoundry.org\/tw\/tech-column\/8536-introduction-of-python-extension-management-tools<\/p>\n","protected":false},"excerpt":{"rendered":"<p>python \u7f3a\u9ede:\u57f7\u884c\u6548\u80fd\u8f03\u6162\u512a\u9ede:\u7a0b\u5f0f\u7de8\u6392\u65b9\u6cd5\u4e00\u81f4 re &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[14],"tags":[],"class_list":["post-525","post","type-post","status-publish","format-standard","hentry","category-develop"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/posts\/525","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/comments?post=525"}],"version-history":[{"count":0,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/posts\/525\/revisions"}],"wp:attachment":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/media?parent=525"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/categories?post=525"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/tags?post=525"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}