{"id":2152,"date":"2015-05-16T23:52:25","date_gmt":"2015-05-16T15:52:25","guid":{"rendered":"http:\/\/ixyzero.com\/blog\/?p=2152"},"modified":"2015-05-16T23:52:25","modified_gmt":"2015-05-16T15:52:25","slug":"python%e7%9a%84%e4%b8%80%e4%ba%9b%e5%b0%8f%e7%9f%a5%e8%af%86%e7%82%b9_10","status":"publish","type":"post","link":"https:\/\/ixyzero.com\/blog\/archives\/2152.html","title":{"rendered":"Python\u7684\u4e00\u4e9b\u5c0f\u77e5\u8bc6\u70b9_10"},"content":{"rendered":"<h5>\u5982\u4f55\u7528Python\u83b7\u53d6Linux\u7528\u6237\u7684$HOME\u76ee\u5f55\uff1f<\/h5>\n<p>\u641c\u7d22\u5173\u952e\u5b57\uff1alinux python get $HOME<\/p>\n<h6>\u53c2\u8003\u89e3\u7b54\uff1a<\/h6>\n<pre class=\"lang:default decode:true \">import os\nos.path.expanduser('~')\n\nimport os, pwd\npwd.getpwuid(os.getuid()).pw_dir\n\nimport os\nos.getenv('HOME')<\/pre>\n<h6>\u53c2\u8003\u94fe\u63a5\uff1a<\/h6>\n<ul>\n<li><a href=\"https:\/\/docs.python.org\/2\/library\/os.path.html#os.path.expanduser\">https:\/\/docs.python.org\/2\/library\/os.path.html#os.path.expanduser<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/2668909\/how-to-find-the-real-user-home-directory-using-python\">http:\/\/stackoverflow.com\/questions\/2668909\/how-to-find-the-real-user-home-directory-using-python<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/4028904\/how-to-get-the-home-directory-in-python\">http:\/\/stackoverflow.com\/questions\/4028904\/how-to-get-the-home-directory-in-python<\/a><\/li>\n<\/ul>\n<h5>\u5982\u4f55\u7528Python\u83b7\u53d6\u4e3b\u673a\u540d(hostname)\uff1f<\/h5>\n<p>\u641c\u7d22\u5173\u952e\u5b57\uff1apython get hostname<\/p>\n<pre class=\"lang:default decode:true \">import socket\nprint socket.gethostname()\n\nimport platform\nplatform.node()\n\nimport os\nos.getenv('HOSTNAME')\nos.environ['HOSTNAME']\n\nimport os\nmyhost = os.uname()[1]<\/pre>\n<h6>\u53c2\u8003\u94fe\u63a5\uff1a<\/h6>\n<p><a href=\"http:\/\/stackoverflow.com\/questions\/4271740\/how-can-i-use-python-to-get-the-system-hostname\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/4271740\/how-can-i-use-python-to-get-the-system-hostname<\/a><\/p>\n<h5>\u7528Python\u83b7\u53d6\u65e5\u671f\u5b57\u7b26\u4e32<\/h5>\n<pre class=\"lang:default decode:true\">import datetime\nyesterday = str(datetime.date.today() - datetime.timedelta(days=1))<\/pre>\n<h5>Python\u7684try catch finally\u7528\u6cd5<\/h5>\n<h6>\u641c\u7d22\u5173\u952e\u5b57\uff1a<\/h6>\n<ul>\n<li>python file open error try finally<\/li>\n<li>python try except finally<\/li>\n<\/ul>\n<h6>\u53c2\u8003\u94fe\u63a5\uff1a<\/h6>\n<ul>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/8774830\/how-with-is-better-than-try-catch-to-open-a-file-in-python\">http:\/\/stackoverflow.com\/questions\/8774830\/how-with-is-better-than-try-catch-to-open-a-file-in-python<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/7777456\/python-tryexceptfinally\">http:\/\/stackoverflow.com\/questions\/7777456\/python-tryexceptfinally<\/a><\/li>\n<li><a href=\"https:\/\/docs.python.org\/2\/tutorial\/errors.html\">https:\/\/docs.python.org\/2\/tutorial\/errors.html<\/a><\/li>\n<li><a href=\"https:\/\/wiki.python.org\/moin\/HandlingExceptions\">https:\/\/wiki.python.org\/moin\/HandlingExceptions<\/a><\/li>\n<li><a href=\"http:\/\/ixyzero.com\/blog\/archives\/1594.html\">http:\/\/ixyzero.com\/blog\/archives\/1594.html<\/a><\/li>\n<li>=<\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/9282967\/how-to-open-a-file-using-the-open-with-statement\">http:\/\/stackoverflow.com\/questions\/9282967\/how-to-open-a-file-using-the-open-with-statement<\/a><\/li>\n<\/ul>\n<h5>Python\u7684 socket.gethostbyname_ex \u7684\u5f02\u5e38\u5982\u4f55\u6355\u83b7\uff1f<\/h5>\n<ul>\n<li><a href=\"https:\/\/docs.python.org\/2\/library\/socket.html#socket.gaierror\">https:\/\/docs.python.org\/2\/library\/socket.html#socket.gaierror<\/a>\u00a0\u00a0\u00a0\u00a0 #except socket.gaierror:<\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/13413258\/how-do-i-catch-an-exception-for-a-module-that-ive-not-fully-imported\">http:\/\/stackoverflow.com\/questions\/13413258\/how-do-i-catch-an-exception-for-a-module-that-ive-not-fully-imported<\/a><\/li>\n<\/ul>\n<p>==<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.python.org\/2\/library\/stdtypes.html#str.join\">https:\/\/docs.python.org\/2\/library\/stdtypes.html#str.join<\/a><\/li>\n<li><a href=\"https:\/\/docs.python.org\/2\/library\/string.html#string.join\">https:\/\/docs.python.org\/2\/library\/string.html#string.join<\/a><\/li>\n<li>=<\/li>\n<li><a href=\"https:\/\/wiki.python.org\/moin\/Powerful%20Python%20One-Liners\" target=\"_blank\">Powerful Python One-Liners &#8211; Python Wiki<\/a><\/li>\n<\/ul>\n<p>==<\/p>\n<h5>Python\u4e2d\u7684\u67d0\u4e00\u884c\u592a\u957f\u600e\u4e48\u529e\uff1f<\/h5>\n<h6>\u641c\u7d22\u5173\u952e\u5b57\uff1a<\/h6>\n<p>site:stackoverflow.com Python multi lines<\/p>\n<h6>\u53c2\u8003\u94fe\u63a5\uff1a<\/h6>\n<ul>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/10660435\/pythonic-way-to-create-a-long-multi-line-string\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/10660435\/pythonic-way-to-create-a-long-multi-line-string<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/14417571\/breaking-a-line-of-python-to-multiple-lines\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/14417571\/breaking-a-line-of-python-to-multiple-lines<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/53162\/how-can-i-do-a-line-break-line-continuation-in-python\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/53162\/how-can-i-do-a-line-break-line-continuation-in-python<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/4172448\/is-it-possible-to-break-a-long-line-to-multiple-lines-in-python\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/4172448\/is-it-possible-to-break-a-long-line-to-multiple-lines-in-python<\/a><\/li>\n<li><a href=\"http:\/\/seanlin.logdown.com\/posts\/210861-python-idioms-8-too-long\" target=\"_blank\">http:\/\/seanlin.logdown.com\/posts\/210861-python-idioms-8-too-long<\/a><\/li>\n<li><a href=\"https:\/\/docs.python.org\/2\/reference\/lexical_analysis.html#implicit-line-joining\" target=\"_blank\">https:\/\/docs.python.org\/2\/reference\/lexical_analysis.html#implicit-line-joining<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/181530\/python-style-multiple-line-conditions-in-ifs\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/181530\/python-style-multiple-line-conditions-in-ifs<\/a><\/li>\n<\/ul>\n<h5>\u4ee5HTML\u5f62\u5f0f\u67e5\u770bpydoc\u7684\u65b9\u6cd5<\/h5>\n<pre class=\"lang:default decode:true\">CMD_prompt&gt; python -m pydoc -p 7777<\/pre>\n<p>7777\u4e3a\u672c\u673a\u7aef\u53e3\u53f7\uff0c\u4e5f\u53ef\u6539\u6210\u5176\u4ed6\u7aef\u53e3\u53f7\uff1b\u7136\u540e\u6d4f\u89c8\u5668\u4e2d\u8bbf\u95ee http:\/\/localhost:{\u7aef\u53e3\u53f7}\/ \uff0c\u5982 http:\/\/localhost:7777\/ \u5373\u53ef<\/p>\n<h6>\u547d\u4ee4\u884c\u89e3\u91ca\uff1a<\/h6>\n<ul>\n<li>-m pydoc\u00a0#\u6253\u5f00pydoc\u6a21\u5757\uff0cpydoc\u662f\u67e5\u770bpython\u6587\u6863\u7684\u9996\u9009\u5de5\u5177<\/li>\n<li>-p 7777 #\u8868\u793a\u57287777\u7aef\u53e3\u4e0a\u542f\u52a8server<\/li>\n<\/ul>\n<h5>\u68c0\u67e5 \u5b57\u7b26\u4e32needle \u662f\u5426\u6709\u7279\u5b9a\u7684\u7ed3\u5c3e<\/h5>\n<p>\u60ef\u7528\uff08\u751f\u6210\u5668\u8868\u8fbe\u5f0f\uff09\uff1a<\/p>\n<pre class=\"lang:default decode:true\">if any(needle.endswith(e) for e in ('ly', 'ed', 'ing', 'ers')):\n    print('Is valid')\nelse:\n    print('Invalid')<\/pre>\n<p>\u975e\u60ef\u7528\uff08\u5217\u8868\u751f\u6210\u5f0f\uff09\uff1a<\/p>\n<pre class=\"lang:default decode:true \">if any([needle.endswith(e) for e in ('ly', 'ed', 'ing', 'ers')]):\n    print('Is valid')\nelse:\nprint('Invalid')<\/pre>\n<h5>Python\u53cd\u6a21\u5f0f\uff1a\u4ece&#8221;\u574f\u4ee3\u7801&#8221;\u4e2d\u5b66\u4e60\u6700\u4f73\u5b9e\u8df5<\/h5>\n<p><a href=\"http:\/\/docs.quantifiedcode.com\/python-anti-patterns\/index.html\" target=\"_blank\">http:\/\/docs.quantifiedcode.com\/python-anti-patterns\/index.html<\/a><\/p>\n<p>=-=<\/p>\n<h5>StackExchange\u4e0a\u548cPython\u76f8\u5173\u7684\u4e00\u4e9b\u95ee\u7b54<\/h5>\n<ul>\n<li><a href=\"http:\/\/programmers.stackexchange.com\/questions\/tagged\/python?sort=votes&amp;pageSize=15\" target=\"_blank\">http:\/\/programmers.stackexchange.com\/questions\/tagged\/python?sort=votes&amp;pageSize=15<\/a><\/li>\n<li><a href=\"http:\/\/programmers.stackexchange.com\/questions\/tagged\/algorithms?sort=votes&amp;pageSize=15\" target=\"_blank\">http:\/\/programmers.stackexchange.com\/questions\/tagged\/algorithms?sort=votes&amp;pageSize=15<\/a><\/li>\n<li><a href=\"http:\/\/programmers.stackexchange.com\/questions\/tagged\/programming-practices?sort=votes&amp;pageSize=15\" target=\"_blank\">http:\/\/programmers.stackexchange.com\/questions\/tagged\/programming-practices?sort=votes&amp;pageSize=15<\/a><\/li>\n<li><a href=\"http:\/\/programmers.stackexchange.com\/questions\/tagged\/database-design?sort=votes&amp;pageSize=15\" target=\"_blank\">http:\/\/programmers.stackexchange.com\/questions\/tagged\/database-design?sort=votes&amp;pageSize=15<\/a><\/li>\n<li><a href=\"http:\/\/programmers.stackexchange.com\/questions\/tagged\/security?sort=votes&amp;pageSize=15\" target=\"_blank\">http:\/\/programmers.stackexchange.com\/questions\/tagged\/security?sort=votes&amp;pageSize=15<\/a><\/li>\n<\/ul>\n<h5>\u5408\u7406\u4f7f\u7528Python\u5bf9\u8c61\u63d0\u9ad8\u6027\u80fd\u3001\u901f\u5ea6<\/h5>\n<h6>\u641c\u7d22\u5173\u952e\u5b57\uff1a<\/h6>\n<ul>\n<li>Python Complexity<\/li>\n<li>Python speed Complexity<\/li>\n<li>Python performance Complexity<\/li>\n<li>Python Efficiency<\/li>\n<li>Python idioms performance<\/li>\n<li>Python idioms speed<\/li>\n<li>Python idioms Complexity<\/li>\n<\/ul>\n<h6>\u53c2\u8003\u94fe\u63a5\uff1a<\/h6>\n<ul>\n<li><a href=\"http:\/\/www.memonic.com\/user\/pneff\/folder\/python\/id\/1bufp\" target=\"_blank\">Python Idioms and Efficiency 1\/28\/07 by Patrice Neff &#8211; Memonic<\/a><\/li>\n<li><a href=\"https:\/\/wiki.python.org\/moin\/PythonSpeed\" target=\"_blank\">PythonSpeed &#8211; Python Wiki<\/a><\/li>\n<li><a href=\"https:\/\/wiki.python.org\/moin\/PythonSpeed\/PerformanceTips\" target=\"_blank\">PythonSpeed\/PerformanceTips<\/a><\/li>\n<li><a href=\"https:\/\/wiki.python.org\/moin\/TimeComplexity\" target=\"_blank\">TimeComplexity &#8211; Python Wiki<\/a><\/li>\n<li><a href=\"https:\/\/www.ics.uci.edu\/~pattis\/ICS-33\/lectures\/complexitypython.txt\" target=\"_blank\">Complexity of Python Operations<\/a><\/li>\n<li>=<\/li>\n<li><a href=\"http:\/\/www.jeffknupp.com\/blog\/2012\/10\/04\/writing-idiomatic-python\/\" target=\"_blank\">http:\/\/www.jeffknupp.com\/blog\/2012\/10\/04\/writing-idiomatic-python\/<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/7165465\/optimizing-python-code\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/7165465\/optimizing-python-code<\/a><\/li>\n<li>=<\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/231767\/what-does-the-yield-keyword-do-in-python\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/231767\/what-does-the-yield-keyword-do-in-python<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\u5982\u4f55\u7528Python\u83b7\u53d6Linux\u7528\u6237\u7684$HOME\u76ee\u5f55\uff1f \u641c\u7d22\u5173\u952e\u5b57\uff1alinux python get $HOM [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[23,7,12],"tags":[8,19],"class_list":["post-2152","post","type-post","status-publish","format-standard","hentry","category-knowledgebase-2","category-programing","category-tools","tag-python","tag-tips"],"views":2762,"_links":{"self":[{"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/posts\/2152","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/comments?post=2152"}],"version-history":[{"count":0,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/posts\/2152\/revisions"}],"wp:attachment":[{"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/media?parent=2152"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/categories?post=2152"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/tags?post=2152"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}