{"id":1243,"date":"2022-11-27T18:46:06","date_gmt":"2022-11-27T10:46:06","guid":{"rendered":"https:\/\/www.iotot.com\/?p=1243"},"modified":"2022-11-27T18:46:06","modified_gmt":"2022-11-27T10:46:06","slug":"2022%e5%b9%b4python%e5%ba%93%e5%a4%a7%e5%85%a8","status":"publish","type":"post","link":"https:\/\/blog.iotot.com\/?p=1243","title":{"rendered":"2022\u5e74python\u5e93\u5927\u5168"},"content":{"rendered":"<h1 id=\"21d6df\">\u4e00\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E7%AE%97%E6%B3%95%E8%AE%BE%E8%AE%A1\">\u7b97\u6cd5\u8bbe\u8ba1<\/a><\/h1>\n<p><em>Python \u7684\u6570\u636e\u7ed3\u6784\uff0c\u7b97\u6cd5\u548c\u8bbe\u8ba1\u6a21\u5f0f\u7684\u5b9e\u73b0\u3002\u53e6\u8bf7\u53c2\u9605<a href=\"https:\/\/github.com\/tayllan\/awesome-algorithms\" rel=\"nofollow noopener noreferrer\">\u771f\u68d2\u7b97\u6cd5<\/a>\u3002<\/em><\/p>\n<ul>\n<li>\u6f14\u7b97\u6cd5\n<ul>\n<li><a href=\"https:\/\/github.com\/keon\/algorithms\" rel=\"nofollow noopener noreferrer\">algorithms<\/a>\u00a0\u2013\u6570\u636e\u7ed3\u6784\u548c\u7b97\u6cd5\u7684\u6700\u5c0f\u793a\u4f8b\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/prabhupant\/python-ds\" rel=\"nofollow noopener noreferrer\">python-ds-<\/a>\u00a0\u7528\u4e8e\u91c7\u8bbf\u91c7\u8bbf\u7684\u6570\u636e\u7ed3\u6784\u548c\u7b97\u6cd5\u7684\u96c6\u5408\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/grantjenks\/python-sortedcontainers\" rel=\"nofollow noopener noreferrer\">sortedcontainers-<\/a>\u00a0\u6392\u5e8f\u96c6\u5408\u7684\u5feb\u901f\u548c\u7eaf Python \u5b9e\u73b0\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/TheAlgorithms\/Python\" rel=\"nofollow noopener noreferrer\">TheAlgorithms-<\/a>\u00a0\u7528 Python \u5b9e\u73b0\u7684\u6240\u6709\u7b97\u6cd5\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u8bbe\u8ba1\u6a21\u5f0f\n<ul>\n<li><a href=\"https:\/\/github.com\/tylerlaberge\/PyPattyrn\" rel=\"nofollow noopener noreferrer\">PyPattyrn-<\/a>\u00a0\u4e00\u4e2a\u7b80\u5355\u4f46\u6709\u6548\u7684\u5e93\uff0c\u7528\u4e8e\u5b9e\u73b0\u5e38\u89c1\u7684\u8bbe\u8ba1\u6a21\u5f0f\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/faif\/python-patterns\" rel=\"nofollow noopener noreferrer\">python-patterns<\/a>\u00a0-Python \u4e2d\u8bbe\u8ba1\u6a21\u5f0f\u7684\u96c6\u5408\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pytransitions\/transitions\" rel=\"nofollow noopener noreferrer\">transitions<\/a>\u00a0&#8211; \u4e00\u79cd\u8f7b\u91cf\u7ea7\u7684\uff0c\u9762\u5411\u5bf9\u8c61\u7684\u6709\u9650\u72b6\u6001\u673a\u5b9e\u73b0\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"7584f4\"><a class=\"reference-link\" name=\"\u4e8c\u3001  \u58f0\u97f3\u3001\u89c6\u9891\u3001\u56fe\u50cf\u3001\u6587\u5b57\u5904\u7406\"><\/a>\u4e8c\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E5%A3%B0%E9%9F%B3%E3%80%81%E8%A7%86%E9%A2%91%E3%80%81%E5%9B%BE%E7%89%87%E3%80%81%E6%96%87%E5%AD%97%E5%A4%84%E7%90%86\">\u58f0\u97f3\u3001\u89c6\u9891\u3001\u56fe\u50cf\u3001\u6587\u5b57\u5904\u7406<\/a><\/h1>\n<h2 id=\"6ab965\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u5904\u7406\u97f3\u9891\u53ca\u5176\u5143\u6570\u636e\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u5904\u7406\u97f3\u9891\u53ca\u5176\u5143\u6570\u636e\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li>\u58f0\u97f3\u7684\n<ul>\n<li><a href=\"https:\/\/github.com\/beetbox\/audioread\" rel=\"nofollow noopener noreferrer\">audioread-<\/a>\u00a0\u8de8\u5e93\uff08GStreamer + \u6838\u5fc3\u97f3\u9891 + MAD + FFmpeg\uff09\u97f3\u9891\u89e3\u7801\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/worldveil\/dejavu\" rel=\"nofollow noopener noreferrer\">dejavu-<\/a>\u00a0\u97f3\u9891\u6307\u7eb9\u8bc6\u522b\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/keunwoochoi\/kapre\" rel=\"nofollow noopener noreferrer\">kapre<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/github.com\/keunwoochoi\/kapre\" rel=\"nofollow noopener noreferrer\">Keras<\/a>\u00a0\u97f3\u9891\u9884\u5904\u7406\u5668<\/li>\n<li><a href=\"https:\/\/github.com\/librosa\/librosa\" rel=\"nofollow noopener noreferrer\">librosa-<\/a>\u00a0\u7528\u4e8e\u97f3\u9891\u548c\u97f3\u4e50\u5206\u6790\u7684 Python \u5e93<\/li>\n<li><a href=\"https:\/\/github.com\/sergree\/matchering\" rel=\"nofollow noopener noreferrer\">matchering<\/a>\u00a0&#8211; \u4e00\u4e2a\u7528\u4e8e\u81ea\u52a8\u53c2\u8003\u97f3\u9891\u5236\u4f5c\u7684\u5e93\u3002<\/li>\n<li><a href=\"http:\/\/bspaans.github.io\/python-mingus\/\" rel=\"nofollow noopener noreferrer\">mingus-<\/a>\u00a0\u5e26\u6709 MIDI \u6587\u4ef6\u548c\u64ad\u653e\u652f\u6301\u7684\u9ad8\u7ea7\u97f3\u4e50\u7406\u8bba\u548c\u4e50\u8c31\u5305\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/tyiannak\/pyAudioAnalysis\" rel=\"nofollow noopener noreferrer\">pyAudioAnalysis-<\/a>\u00a0\u97f3\u9891\u7279\u5f81\u63d0\u53d6\uff0c\u5206\u7c7b\uff0c\u5206\u6bb5\u548c\u5e94\u7528\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/jiaaro\/pydub\" rel=\"nofollow noopener noreferrer\">pydub-<\/a>\u00a0\u4f7f\u7528\u7b80\u5355\u6613\u7528\u7684\u9ad8\u7ea7\u754c\u9762\u5904\u7406\u97f3\u9891\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/Parisson\/TimeSide\" rel=\"nofollow noopener noreferrer\">TimeSide-<\/a>\u00a0\u5f00\u653e\u7684 Web \u97f3\u9891\u5904\u7406\u6846\u67b6\u3002<\/li>\n<\/ul>\n<\/li>\n<li>Metadata\n<ul>\n<li><a href=\"https:\/\/github.com\/beetbox\/beets\" rel=\"nofollow noopener noreferrer\">beets<\/a>&#8211; \u97f3\u4e50\u5e93\u7ba1\u7406\u5668\u548c\u00a0<a href=\"https:\/\/musicbrainz.org\/\" rel=\"nofollow noopener noreferrer\">MusicBrainz<\/a>\u00a0\u6807\u8bb0\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/nicfit\/eyeD3\" rel=\"nofollow noopener noreferrer\">eyeD3-<\/a>\u00a0\u4e00\u79cd\u7528\u4e8e\u5904\u7406\u97f3\u9891\u6587\u4ef6\u7684\u5de5\u5177\uff0c\u7279\u522b\u662f\u5305\u542b ID3 \u5143\u6570\u636e\u7684 MP3 \u6587\u4ef6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/quodlibet\/mutagen\" rel=\"nofollow noopener noreferrer\">mutagen-<\/a>\u00a0\u5904\u7406\u97f3\u9891\u5143\u6570\u636e\u7684 Python \u6a21\u5757\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/devsnd\/tinytag\" rel=\"nofollow noopener noreferrer\">tinytag-<\/a>\u00a0\u7528\u4e8e\u8bfb\u53d6 MP3\uff0cOGG\uff0cFLAC \u548c Wave \u6587\u4ef6\u7684\u97f3\u4e50\u5143\u6570\u636e\u7684\u5e93\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><em>\u7528\u4e8e\u5904\u7406\u89c6\u9891\u548c GIF \u7684\u5e93\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/zulko.github.io\/moviepy\/\" rel=\"nofollow noopener noreferrer\">moviepy-<\/a>\u00a0\u7528\u4e8e\u57fa\u4e8e\u811a\u672c\u7684\u7535\u5f71\u7f16\u8f91\u7684\u6a21\u5757\uff0c\u5177\u6709\u591a\u79cd\u683c\u5f0f\uff0c\u5305\u62ec\u52a8\u753b GIF\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/aizvorski\/scikit-video\" rel=\"nofollow noopener noreferrer\">scikit-video<\/a>\u00a0-SciPy \u7684\u89c6\u9891\u5904\u7406\u4f8b\u7a0b\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/abhiTronix\/vidgear\" rel=\"nofollow noopener noreferrer\">vidgear-<\/a>\u00a0\u6700\u5f3a\u5927\u7684\u591a\u7ebf\u7a0b\u89c6\u9891\u5904\u7406\u6846\u67b6\u3002<\/li>\n<\/ul>\n<h2 id=\"d7101e\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u5904\u7406\u56fe\u50cf\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u5904\u7406\u56fe\u50cf\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/rossgoodwin\/hmap\" rel=\"nofollow noopener noreferrer\">hmap-<\/a>\u00a0\u56fe\u50cf\u76f4\u65b9\u56fe\u91cd\u65b0\u6620\u5c04\u3002<\/li>\n<li><a href=\"https:\/\/sourceforge.net\/projects\/imgseek\/\" rel=\"nofollow noopener noreferrer\">imgSeek-<\/a>\u00a0\u4f7f\u7528\u89c6\u89c9\u76f8\u4f3c\u6027\u641c\u7d22\u56fe\u50cf\u96c6\u5408\u7684\u9879\u76ee\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/hhatto\/nude.py\" rel=\"nofollow noopener noreferrer\">nude.py-<\/a>\u00a0\u88f8\u9732\u68c0\u6d4b\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/daboth\/pagan\" rel=\"nofollow noopener noreferrer\">pagan<\/a>\u00a0&#8211; \u590d\u53e4 identicon\uff08\u963f\u51e1\u8fbe\uff09\u6839\u636e\u8f93\u5165\u7684\u5b57\u7b26\u4e32\u548c\u54c8\u5e0c\u751f\u6210\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/python-pillow\/Pillow\" rel=\"nofollow noopener noreferrer\">pillow<\/a>&#8211; \u6795\u5934\u662f\u53cb\u597d\u7684\u00a0<a href=\"http:\/\/www.pythonware.com\/products\/pil\/\" rel=\"nofollow noopener noreferrer\">PIL<\/a>\u00a0\u53c9\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/WhyNotHugo\/python-barcode\" rel=\"nofollow noopener noreferrer\">python-<\/a>\u00a0barcode &#8211; \u5728 Python \u4e2d\u521b\u5efa\u6761\u5f62\u7801\uff0c\u6ca1\u6709\u4efb\u4f55\u989d\u5916\u7684\u4f9d\u8d56\u5173\u7cfb\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/ajkumar25\/pygram\" rel=\"nofollow noopener noreferrer\">pygram-<\/a>\u00a0\u7c7b\u4f3c Instagram \u7684\u56fe\u50cf\u8fc7\u6ee4\u5668\u3002<\/li>\n<li><a href=\"http:\/\/github.com\/pymatting\/pymatting\" rel=\"nofollow noopener noreferrer\">PyMatting<\/a>\u00a0-Alpha\u00a0<a href=\"http:\/\/github.com\/pymatting\/pymatting\" rel=\"nofollow noopener noreferrer\">\u906e\u7f69<\/a>\u7684\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/lincolnloop\/python-qrcode\" rel=\"nofollow noopener noreferrer\">python-qrcode-<\/a>\u00a0\u4e00\u4e2a\u7eaf Python QR Code \u751f\u6210\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dylanaraps\/pywal\" rel=\"nofollow noopener noreferrer\">pywal-<\/a>\u00a0\u4e00\u79cd\u4ece\u56fe\u50cf\u751f\u6210\u914d\u8272\u65b9\u6848\u7684\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/libvips\/pyvips\" rel=\"nofollow noopener noreferrer\">pyvips-<\/a>\u00a0\u5177\u6709\u4f4e\u5185\u5b58\u9700\u6c42\u7684\u5feb\u901f\u56fe\u50cf\u5904\u7406\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/fogleman\/Quads\" rel=\"nofollow noopener noreferrer\">Quads<\/a>\u00a0&#8211; \u57fa\u4e8e\u56db\u53c9\u6811\u7684\u8ba1\u7b97\u673a\u827a\u672f\u3002<\/li>\n<li><a href=\"http:\/\/scikit-image.org\/\" rel=\"nofollow noopener noreferrer\">scikit-image-<\/a>\u00a0\u7528\u4e8e\uff08\u79d1\u5b66\uff09\u56fe\u50cf\u5904\u7406\u7684 Python \u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/thumbor\/thumbor\" rel=\"nofollow noopener noreferrer\">thumbor-<\/a>\u00a0\u667a\u80fd\u5f71\u50cf\u670d\u52a1\u3002\u5b83\u53ef\u4ee5\u6309\u9700\u88c1\u526a\uff0c\u8c03\u6574\u56fe\u50cf\u5927\u5c0f\u548c\u7ffb\u8f6c\u56fe\u50cf\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dahlia\/wand\" rel=\"nofollow noopener noreferrer\">wand<\/a>\u00a0&#8211;\u00a0<a href=\"http:\/\/www.imagemagick.org\/script\/magick-wand.php\" rel=\"nofollow noopener noreferrer\">MagickWand \u7684<\/a>\u00a0Python \u7ed1\u5b9a\uff0cImageMagick \u7684 C API\u3002<\/li>\n<\/ul>\n<h2 id=\"caf1c5\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u89e3\u6790\u548c\u5904\u7406\u7eaf\u6587\u672c\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u89e3\u6790\u548c\u5904\u7406\u7eaf\u6587\u672c\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li>\u4e00\u822c\u7684\n<ul>\n<li><a href=\"https:\/\/github.com\/chardet\/chardet\" rel=\"nofollow noopener noreferrer\">chardet-<\/a>\u00a0\u4e0e Python 2\/3 \u517c\u5bb9\u7684\u5b57\u7b26\u7f16\u7801\u68c0\u6d4b\u5668\u3002<\/li>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/difflib.html\" rel=\"nofollow noopener noreferrer\">difflib-<\/a>\uff08Python \u6807\u51c6\u5e93\uff09\u7528\u4e8e\u8ba1\u7b97\u589e\u91cf\u7684\u5e2e\u52a9\u7a0b\u5e8f\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/LuminosoInsight\/python-ftfy\" rel=\"nofollow noopener noreferrer\">ftfy-<\/a>\u00a0\u81ea\u52a8\u4f7f Unicode \u6587\u672c\u66f4<a href=\"https:\/\/github.com\/LuminosoInsight\/python-ftfy\" rel=\"nofollow noopener noreferrer\">\u6e05\u6670<\/a>\uff0c\u66f4\u4e00\u81f4\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/seatgeek\/fuzzywuzzy\" rel=\"nofollow noopener noreferrer\">Fuzzywuzzy-<\/a>\u00a0\u6a21\u7cca\u5b57\u7b26\u4e32\u5339\u914d\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/ztane\/python-Levenshtein\/\" rel=\"nofollow noopener noreferrer\">Levenshtein-<\/a>\u00a0\u5feb\u901f\u8ba1\u7b97 Levenshtein \u8ddd\u79bb\u548c\u5b57\u7b26\u4e32\u76f8\u4f3c\u5ea6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/vinta\/pangu.py\" rel=\"nofollow noopener noreferrer\">pangu.py-<\/a>\u00a0\u504f\u6267\u7684\u6587\u5b57\u95f4\u8ddd\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pwaller\/pyfiglet\" rel=\"nofollow noopener noreferrer\">pyfiglet-<\/a>\u00a0\u7528 Python \u7f16\u5199\u7684 figlet \u7684\u5b9e\u73b0\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/mozillazg\/python-pinyin\" rel=\"nofollow noopener noreferrer\">pypinyin-<\/a>\u00a0\u5c06\u6c49\u5b57\uff08<a href=\"https:\/\/github.com\/mozillazg\/python-pinyin\" rel=\"nofollow noopener noreferrer\">Hanzi<\/a>\uff09\u8f6c\u6362\u4e3a\u62fc\u97f3\uff08Pyyin\uff09\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/orsinium\/textdistance\" rel=\"nofollow noopener noreferrer\">textdistance-<\/a>\u00a0\u4f7f\u7528 30 \u591a\u79cd\u7b97\u6cd5\u8ba1\u7b97\u5e8f\u5217\u4e4b\u95f4\u7684\u8ddd\u79bb\u3002<\/li>\n<li><a href=\"https:\/\/pypi.org\/project\/Unidecode\/\" rel=\"nofollow noopener noreferrer\">unidecode<\/a>\u00a0-Unicode \u6587\u672c\u7684 ASCII \u97f3\u8bd1\u3002<\/li>\n<\/ul>\n<\/li>\n<li>Slugify\n<ul>\n<li><a href=\"https:\/\/github.com\/dimka665\/awesome-slugify\" rel=\"nofollow noopener noreferrer\">awesome-slugify-<\/a>\u00a0\u4e00\u4e2a\u53ef\u4ee5\u4fdd\u7559 unicode \u7684 Python slugify \u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/un33k\/python-slugify\" rel=\"nofollow noopener noreferrer\">python-slugify-<\/a>\u00a0\u4e00\u4e2a Python slugify \u5e93\uff0c\u5b83\u5c06 unicode \u8f6c\u6362\u4e3a ASCII\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/mozilla\/unicode-slugify\" rel=\"nofollow noopener noreferrer\">unicode-slugify-<\/a>\u00a0\u4e00\u79cd Slugifier\uff0c\u5b83\u4ee5 Django \u4e3a\u4f9d\u8d56\u9879\u751f\u6210 unicode slug\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u552f\u4e00\u6807\u8bc6\u7b26\n<ul>\n<li><a href=\"https:\/\/github.com\/davidaurelio\/hashids-python\" rel=\"nofollow noopener noreferrer\">hashids-<\/a>\u00a0\u5728 Python \u4e2d\u5b9e\u73b0\u00a0<a href=\"http:\/\/hashids.org\/\" rel=\"nofollow noopener noreferrer\">hashids<\/a>\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/skorokithakis\/shortuuid\" rel=\"nofollow noopener noreferrer\">shortuuid-<\/a>\u00a0\u7b80\u6d01\uff0c\u660e\u786e\u548c URL \u5b89\u5168\u7684 UUID \u7684\u751f\u6210\u5668\u5e93\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u89e3\u6790\u5668\n<ul>\n<li><a href=\"https:\/\/github.com\/dabeaz\/ply\" rel=\"nofollow noopener noreferrer\">ply<\/a>\u00a0&#8211; \u7684 lex \u548c yacc \u89e3\u6790\u5de5\u5177\u7684 Python \u5b9e\u73b0\u3002<\/li>\n<li><a href=\"http:\/\/pygments.org\/\" rel=\"nofollow noopener noreferrer\">pygments-<\/a>\u00a0\u901a\u7528\u8bed\u6cd5\u8367\u5149\u7b14\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pyparsing\/pyparsing\" rel=\"nofollow noopener noreferrer\">pyparsing-<\/a>\u00a0\u751f\u6210\u89e3\u6790\u5668\u7684\u901a\u7528\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/derek73\/python-nameparser\" rel=\"nofollow noopener noreferrer\">python-nameparser &#8211; \u5c06\u4eba\u540d<\/a>\u89e3\u6790\u4e3a\u5b83\u4eec\u7684\u5404\u4e2a\u7ec4\u6210\u90e8\u5206\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/daviddrysdale\/python-phonenumbers\" rel=\"nofollow noopener noreferrer\">python-phonenumbers-<\/a>\u00a0\u89e3\u6790\uff0c\u683c\u5f0f\u5316\uff0c\u5b58\u50a8\u548c\u9a8c\u8bc1\u56fd\u9645\u7535\u8bdd\u53f7\u7801\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/selwin\/python-user-agents\" rel=\"nofollow noopener noreferrer\">python-user-agents-<\/a>\u00a0\u6d4f\u89c8\u5668\u7528\u6237\u4ee3\u7406\u89e3\u6790\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/andialbrecht\/sqlparse\" rel=\"nofollow noopener noreferrer\">sqlparse-<\/a>\u00a0\u4e00\u4e2a\u975e\u9a8c\u8bc1\u7684 SQL \u89e3\u6790\u5668\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"29741b\"><a class=\"reference-link\" name=\"\u4e09\u3001  \u65e5\u671f\u548c\u65f6\u95f4\"><\/a>\u4e09\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E6%97%A5%E6%9C%9F%E5%92%8C%E6%97%B6%E9%97%B4\">\u65e5\u671f\u548c\u65f6\u95f4<\/a><\/h1>\n<h2 id=\"ecb121\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u5904\u7406\u65e5\u671f\u548c\u65f6\u95f4\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u5904\u7406\u65e5\u671f\u548c\u65f6\u95f4\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/arrow.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">Arrow-<\/a>\u00a0\u4e00\u4e2a Python \u5e93\uff0c\u63d0\u4f9b\u4e86\u4e00\u79cd\u660e\u667a\u4e14\u4eba\u6027\u5316\u7684\u65b9\u6cd5\u6765\u521b\u5efa\uff0c\u64cd\u4f5c\uff0c\u683c\u5f0f\u5316\u548c\u8f6c\u6362\u65e5\u671f\uff0c\u65f6\u95f4\u548c\u65f6\u95f4\u6233\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/KoffeinFlummi\/Chronyk\" rel=\"nofollow noopener noreferrer\">Chronyk-<\/a>\u00a0\u4e00\u4e2a Python 3 \u5e93\uff0c\u7528\u4e8e\u89e3\u6790\u4eba\u7c7b\u7f16\u5199\u7684\u65f6\u95f4\u548c\u65e5\u671f\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dateutil\/dateutil\" rel=\"nofollow noopener noreferrer\">dateutil-<\/a>\u00a0\u6807\u51c6 Python\u00a0<a href=\"https:\/\/docs.python.org\/3\/library\/datetime.html\" rel=\"nofollow noopener noreferrer\">datetime<\/a>\u00a0\u6a21\u5757\u7684\u6269\u5c55\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/myusuf3\/delorean\/\" rel=\"nofollow noopener noreferrer\">delorean-<\/a>\u00a0\u4e00\u4e2a\u5e93\uff0c\u7528\u4e8e\u6e05\u9664\u4e0e\u65e5\u671f\u65f6\u95f4\u6709\u5173\u7684\u4e0d\u4fbf\u7684\u4e8b\u5b9e\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/timofurrer\/maya\" rel=\"nofollow noopener noreferrer\">maya-<\/a>\u00a0\u4eba\u7c7b\u7684\u65e5\u671f\u65f6\u95f4\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/zachwill\/moment\" rel=\"nofollow noopener noreferrer\">moment<\/a>\u00a0&#8211; \u4e00\u4e2a Python \u5e93\u7528\u4e8e\u5904\u7406\u65e5\u671f \/ \u65f6\u95f4\u3002\u53d7\u5230\u00a0<a href=\"http:\/\/momentjs.com\/\" rel=\"nofollow noopener noreferrer\">Moment.js \u7684<\/a>\u542f\u53d1\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/sdispater\/pendulum\" rel=\"nofollow noopener noreferrer\">Pendulum<\/a>-Python \u65e5\u671f\u65f6\u95f4\u53d8\u5f97\u5bb9\u6613\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/shinux\/PyTime\" rel=\"nofollow noopener noreferrer\">PyTime-<\/a>\u00a0\u4e00\u4e2a\u6613\u4e8e\u4f7f\u7528\u7684 Python \u6a21\u5757\uff0c\u65e8\u5728\u6309\u5b57\u7b26\u4e32\u64cd\u4f5c\u65e5\u671f \/ \u65f6\u95f4 \/ \u65e5\u671f\u65f6\u95f4\u3002<\/li>\n<li><a href=\"https:\/\/launchpad.net\/pytz\" rel=\"nofollow noopener noreferrer\">pytz-<\/a>\u00a0\u4e16\u754c\u65f6\u533a\u5b9a\u4e49\uff0c\u73b0\u4ee3\u548c\u5386\u53f2\u3002\u5c06\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Tz_database\" rel=\"nofollow noopener noreferrer\">tz \u6570\u636e\u5e93<\/a>\u5e26\u5165 Python\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dirn\/When.py\" rel=\"nofollow noopener noreferrer\">when.py-<\/a>\u00a0\u63d0\u4f9b\u7528\u6237\u53cb\u597d\u7684\u529f\u80fd\u6765\u5e2e\u52a9\u6267\u884c\u5e38\u89c1\u7684\u65e5\u671f\u548c\u65f6\u95f4\u64cd\u4f5c\u3002<\/li>\n<\/ul>\n<h1 id=\"46b789\"><a class=\"reference-link\" name=\"\u56db\u3001  \u722c\u866b\"><\/a>\u56db\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E7%88%AC%E8%99%AB\">\u722c\u866b<\/a><\/h1>\n<p><em>\u81ea\u52a8\u6267\u884c Web \u6293\u53d6\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/chineking\/cola\" rel=\"nofollow noopener noreferrer\">cola-<\/a>\u00a0\u5206\u5e03\u5f0f\u6293\u53d6\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/pythonhosted.org\/feedparser\/\" rel=\"nofollow noopener noreferrer\">feedparser-<\/a>\u00a0\u901a\u7528\u4f9b\u7a3f\u89e3\u6790\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/lorien\/grab\" rel=\"nofollow noopener noreferrer\">grab<\/a>\u00a0&#8211; \u7f51\u7ad9\u6293\u53d6\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/MechanicalSoup\/MechanicalSoup\" rel=\"nofollow noopener noreferrer\">MechanicalSoup-<\/a>\u00a0\u7528\u4e8e\u81ea\u52a8\u4e0e\u7f51\u7ad9\u8fdb\u884c\u4ea4\u4e92\u7684 Python \u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/scrapinghub\/portia\" rel=\"nofollow noopener noreferrer\">portia<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/github.com\/scrapinghub\/portia\" rel=\"nofollow noopener noreferrer\">Scrapy \u7684<\/a>\u89c6\u89c9\u6293\u53d6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/binux\/pyspider\" rel=\"nofollow noopener noreferrer\">pyspider-<\/a>\u00a0\u5f3a\u5927\u7684\u8718\u86db\u7cfb\u7edf\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/jmcarp\/robobrowser\" rel=\"nofollow noopener noreferrer\">robobrowser-<\/a>\u00a0\u4e00\u4e2a\u7b80\u5355\u7684 Pythonic \u5e93\uff0c\u65e0\u9700\u72ec\u7acb\u7684 Web \u6d4f\u89c8\u5668\u5373\u53ef\u6d4f\u89c8 Web\u3002<\/li>\n<li><a href=\"https:\/\/scrapy.org\/\" rel=\"nofollow noopener noreferrer\">scrapy-<\/a>\u00a0\u5feb\u901f\u7684\u9ad8\u7ea7\u5c4f\u5e55\u6293\u53d6\u548c\u7f51\u7edc\u722c\u7f51\u6846\u67b6\u3002<\/li>\n<\/ul>\n<p><em>\u7528\u4e8e\u63d0\u53d6 Web \u5185\u5bb9\u7684\u5e93\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/Alir3z4\/html2text\" rel=\"nofollow noopener noreferrer\">html2text-<\/a>\u00a0\u5c06 HTML \u8f6c\u6362\u4e3a Markdown \u683c\u5f0f\u7684\u6587\u672c\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/michaelhelmick\/lassie\" rel=\"nofollow noopener noreferrer\">lassie-<\/a>\u00a0\u4eba\u7c7b\u7684 Web \u5185\u5bb9\u68c0\u7d22\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/coleifer\/micawber\" rel=\"nofollow noopener noreferrer\">micawber-<\/a>\u00a0\u4e00\u4e2a\u5c0f\u578b\u5e93\uff0c\u7528\u4e8e\u4ece URL \u4e2d\u63d0\u53d6\u4e30\u5bcc\u7684\u5185\u5bb9\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/codelucas\/newspaper\" rel=\"nofollow noopener noreferrer\">newspaper<\/a>\u00a0-Python \u4e2d\u7684\u65b0\u95fb\u63d0\u53d6\uff0c\u6587\u7ae0\u63d0\u53d6\u548c\u5185\u5bb9\u7ba1\u7406\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/buriy\/python-readability\" rel=\"nofollow noopener noreferrer\">python-<\/a>\u00a0readability\u00a0<a href=\"https:\/\/github.com\/buriy\/python-readability\" rel=\"nofollow noopener noreferrer\">&#8211;<\/a>\u00a0arc90 \u7684\u53ef\u8bfb\u6027\u5de5\u5177\u7684\u5feb\u901f Python \u7aef\u53e3\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/psf\/requests-html\" rel=\"nofollow noopener noreferrer\">requests-html<\/a>\u00a0\u2013\u9002\u7528\u4e8e\u4eba\u7c7b\u7684 Pythonic HTML \u89e3\u6790\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/miso-belica\/sumy\" rel=\"nofollow noopener noreferrer\">sumy-<\/a>\u00a0\u81ea\u52a8\u6c47\u603b\u6587\u672c\u6587\u6863\u548c HTML \u9875\u9762\u7684\u6a21\u5757\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/deanmalmgren\/textract\" rel=\"nofollow noopener noreferrer\">textract-<\/a>\u00a0\u4ece\u4efb\u4f55\u6587\u6863\uff0cWord\uff0cPowerPoint\uff0cPDF \u7b49\u4e2d\u63d0\u53d6\u6587\u672c<\/li>\n<li><a href=\"https:\/\/github.com\/gaojiuli\/toapi\" rel=\"nofollow noopener noreferrer\">toapi-<\/a>\u00a0\u6bcf\u4e2a\u7f51\u7ad9\u90fd\u63d0\u4f9b API\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"f65fa6\"><a class=\"reference-link\" name=\"\u4e94\u3001  HTML\u3001XML\"><\/a>\u4e94\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#HTML%E3%80%81XML\">HTML\u3001XML<\/a><\/h1>\n<p><em>\u7528\u4e8e\u5904\u7406 HTML \u548c XML \u7684\u5e93\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/www.crummy.com\/software\/BeautifulSoup\/bs4\/doc\/\" rel=\"nofollow noopener noreferrer\">BeautifulSoup-<\/a>\u00a0\u63d0\u4f9b Pythonic \u60ef\u7528\u6cd5\u6765\u8fed\u4ee3\uff0c\u641c\u7d22\u548c\u4fee\u6539 HTML \u6216 XML\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/mozilla\/bleach\" rel=\"nofollow noopener noreferrer\">bleach<\/a>\u00a0\u2013\u57fa\u4e8e\u767d\u540d\u5355 HTML \u6e05\u7406\u548c\u6587\u672c linkification \u5e93\u4e2d\u7684\u3002<\/li>\n<li><a href=\"https:\/\/pypi.org\/project\/cssutils\/\" rel=\"nofollow noopener noreferrer\">cssutils-<\/a>\u00a0\u4e00\u4e2a Python \u7684 CSS \u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/html5lib\/html5lib-python\" rel=\"nofollow noopener noreferrer\">html5lib-<\/a>\u00a0\u4e00\u4e2a\u7b26\u5408\u6807\u51c6\u7684\u5e93\uff0c\u7528\u4e8e\u89e3\u6790\u548c\u5e8f\u5217\u5316 HTML \u6587\u6863\u548c\u7247\u6bb5\u3002<\/li>\n<li><a href=\"http:\/\/lxml.de\/\" rel=\"nofollow noopener noreferrer\">lxml-<\/a>\u00a0\u4e00\u4e2a\u975e\u5e38\u5feb\u901f\uff0c\u6613\u4e8e\u4f7f\u7528\u7684\u901a\u7528\u5e93\uff0c\u7528\u4e8e\u5904\u7406 HTML \u548c XML\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pallets\/markupsafe\" rel=\"nofollow noopener noreferrer\">MarkupSafe-<\/a>\u00a0\u4e3a Python \u5b9e\u73b0 XML \/ HTML \/ XHTML \u6807\u8bb0\u5b89\u5168\u5b57\u7b26\u4e32\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/gawel\/pyquery\" rel=\"nofollow noopener noreferrer\">pyquery-<\/a>\u00a0\u7528\u4e8e\u89e3\u6790 HTML \u7684\u7c7b\u4f3c jQuery \u7684\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/stchris\/untangle\" rel=\"nofollow noopener noreferrer\">untangle<\/a>\u00a0\u2013\u5c06 XML \u6587\u6863\u8f6c\u6362\u4e3a Python \u5bf9\u8c61\uff0c\u4ee5\u65b9\u4fbf\u8bbf\u95ee\u3002<\/li>\n<li><a href=\"http:\/\/weasyprint.org\/\" rel=\"nofollow noopener noreferrer\">WeasyPrint-<\/a>\u00a0\u7528\u4e8e HTML \u548c CSS \u7684\u53ef\u89c6\u6e32\u67d3\u5f15\u64ce\uff0c\u53ef\u4ee5\u5bfc\u51fa\u4e3a PDF\u3002<\/li>\n<li><a href=\"https:\/\/xmldataset.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">xmldataset-<\/a>\u00a0\u7b80\u5355\u7684 XML \u89e3\u6790\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/martinblech\/xmltodict\" rel=\"nofollow noopener noreferrer\">xmltodict-<\/a>\u00a0\u4f7f\u7528 XML \u5c31\u50cf\u4f7f\u7528 JSON\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"aa12c2\"><a class=\"reference-link\" name=\"\u516d\u3001  HTTP\u5ba2\u6237\u7aef\"><\/a>\u516d\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#HTTP%E5%AE%A2%E6%88%B7%E7%AB%AF\">HTTP \u5ba2\u6237\u7aef<\/a><\/h1>\n<h2 id=\"94f48b\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u4f7f\u7528HTTP\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u4f7f\u7528 HTTP \u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/spyoungtech\/grequests\" rel=\"nofollow noopener noreferrer\">grequests-<\/a>\u00a0\u5f02\u6b65 HTTP \u8bf7\u6c42\u7684 request + gevent\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/httplib2\/httplib2\" rel=\"nofollow noopener noreferrer\">httplib2-<\/a>\u00a0\u5168\u9762\u7684 HTTP \u5ba2\u6237\u7aef\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/encode\/httpx\" rel=\"nofollow noopener noreferrer\">httpx-<\/a>\u00a0\u7528\u4e8e Python \u7684\u4e0b\u4e00\u4ee3 HTTP \u5ba2\u6237\u7aef\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/psf\/requests\" rel=\"nofollow noopener noreferrer\">requests<\/a>\u00a0-HTTP \u5bf9\u4eba\u7c7b\u7684\u8bf7\u6c42\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/twisted\/treq\" rel=\"nofollow noopener noreferrer\">treq<\/a>\u00a0-Python \u8bf7\u6c42\uff0c\u4f8b\u5982\u5728 Twisted \u7684 HTTP \u5ba2\u6237\u7aef\u4e4b\u4e0a\u6784\u5efa\u7684 API\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"809393\"><a class=\"reference-link\" name=\"\u4e03\u3001  office\u6a21\u5757\"><\/a>\u4e03\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#office%E6%A8%A1%E5%9D%97\">office \u6a21\u5757<\/a><\/h1>\n<p><em>\u7528\u4e8e\u89e3\u6790\u548c\u5904\u7406\u7279\u5b9a\u6587\u672c\u683c\u5f0f\u7684\u5e93\u3002<\/em><\/p>\n<ul>\n<li>General\n<ul>\n<li><a href=\"https:\/\/github.com\/jazzband\/tablib\" rel=\"nofollow noopener noreferrer\">tablib<\/a>\u00a0-XLS\uff0cCSV\uff0cJSON\uff0cYAML \u4e2d\u7684\u8868\u683c\u6570\u636e\u96c6\u7684\u6a21\u5757\u3002<\/li>\n<\/ul>\n<\/li>\n<li>Office\n<ul>\n<li><a href=\"https:\/\/github.com\/elapouya\/python-docx-template\" rel=\"nofollow noopener noreferrer\">docxtpl-<\/a>\u00a0\u901a\u8fc7 jinja2 \u6a21\u677f\u7f16\u8f91 docx \u6587\u6863<\/li>\n<li><a href=\"https:\/\/openpyxl.readthedocs.io\/en\/stable\/\" rel=\"nofollow noopener noreferrer\">openpyxl-<\/a>\u00a0\u7528\u4e8e\u8bfb\u53d6\u548c\u5199\u5165 Excel 2010 xlsx \/xlsm\/xltx \/xltm \u6587\u4ef6\u7684\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pyexcel\/pyexcel\" rel=\"nofollow noopener noreferrer\">pyexcel-<\/a>\u00a0\u63d0\u4f9b\u4e00\u4e2a\u7528\u4e8e\u8bfb\u53d6\uff0c\u64cd\u4f5c\u548c\u5199\u5165 csv\uff0cods\uff0cxls\uff0cxlsx \u548c xlsm \u6587\u4ef6\u7684 API\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/python-openxml\/python-docx\" rel=\"nofollow noopener noreferrer\">python-docx-<\/a>\u00a0\u8bfb\u53d6\uff0c\u67e5\u8be2\u548c\u4fee\u6539 Microsoft Word 2007\/2008 docx \u6587\u4ef6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/scanny\/python-pptx\" rel=\"nofollow noopener noreferrer\">python-pptx-<\/a>\u00a0\u7528\u4e8e\u521b\u5efa\u548c\u66f4\u65b0 PowerPoint\uff08.pptx\uff09\u6587\u4ef6\u7684 Python \u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/unoconv\/unoconv\" rel=\"nofollow noopener noreferrer\">unoconv-<\/a>\u00a0\u5728 LibreOffice \/ OpenOffice \u652f\u6301\u7684\u4efb\u4f55\u6587\u6863\u683c\u5f0f\u4e4b\u95f4\u8f6c\u6362\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/jmcnamara\/XlsxWriter\" rel=\"nofollow noopener noreferrer\">XlsxWriter-<\/a>\u00a0\u4e00\u4e2a\u7528\u4e8e\u521b\u5efa Excel .xlsx \u6587\u4ef6\u7684 Python \u6a21\u5757\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/ZoomerAnalytics\/xlwings\" rel=\"nofollow noopener noreferrer\">xlwings<\/a>\u00a0-BSD \u8bb8\u53ef\u7684\u5e93\uff0c\u53ef\u4ee5\u8f7b\u677e\u5730\u4ece Excel \u8c03\u7528 Python\uff0c\u53cd\u4e4b\u4ea6\u7136\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/python-excel\/xlwt\" rel=\"nofollow noopener noreferrer\">xlwt<\/a>\u00a0\/\u00a0<a href=\"https:\/\/github.com\/python-excel\/xlrd\" rel=\"nofollow noopener noreferrer\">xlrd-<\/a>\u00a0\u4ece Excel \u6587\u4ef6\u5199\u5165\u548c\u8bfb\u53d6\u6570\u636e\u4ee5\u53ca\u683c\u5f0f\u5316\u4fe1\u606f\u3002<\/li>\n<\/ul>\n<\/li>\n<li>PDF \u683c\u5f0f\n<ul>\n<li><a href=\"https:\/\/github.com\/euske\/pdfminer\" rel=\"nofollow noopener noreferrer\">PDFMiner-<\/a>\u00a0\u4e00\u79cd\u4ece PDF \u6587\u6863\u63d0\u53d6\u4fe1\u606f\u7684\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/mstamy2\/PyPDF2\" rel=\"nofollow noopener noreferrer\">PyPDF2-<\/a>\u00a0\u4e00\u4e2a\u80fd\u591f\u62c6\u5206\uff0c\u5408\u5e76\u548c\u8f6c\u6362 PDF \u9875\u9762\u7684\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/www.reportlab.com\/opensource\/\" rel=\"nofollow noopener noreferrer\">ReportLab-<\/a>\u00a0\u5141\u8bb8\u5feb\u901f\u521b\u5efa\u4e30\u5bcc\u7684 PDF \u6587\u6863\u3002<\/li>\n<\/ul>\n<\/li>\n<li>Markdown\n<ul>\n<li><a href=\"https:\/\/github.com\/lepture\/mistune\" rel=\"nofollow noopener noreferrer\">Mistune-Markdown<\/a>\u00a0\u6700\u5feb\uff0c\u529f\u80fd\u6700\u5168\u7684\u7eaf Python \u89e3\u6790\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/waylan\/Python-Markdown\" rel=\"nofollow noopener noreferrer\">Python-Markdown<\/a>\u00a0-John Gruber \u7684 Markdown \u7684 Python \u5b9e\u73b0\u3002<\/li>\n<\/ul>\n<\/li>\n<li>YAML\n<ul>\n<li><a href=\"http:\/\/pyyaml.org\/\" rel=\"nofollow noopener noreferrer\">PyYAML-<\/a>\u00a0\u9002\u7528\u4e8e Python \u7684 YAML \u5b9e\u73b0\u3002<\/li>\n<\/ul>\n<\/li>\n<li>CSV\n<ul>\n<li><a href=\"https:\/\/github.com\/wireservice\/csvkit\" rel=\"nofollow noopener noreferrer\">csvkit-<\/a>\u00a0\u8f6c\u6362\u4e3a CSV \u5e76\u4f7f\u7528 CSV \u7684\u5b9e\u7528\u7a0b\u5e8f\u3002<\/li>\n<\/ul>\n<\/li>\n<li>Archive\n<ul>\n<li><a href=\"https:\/\/github.com\/mitsuhiko\/unp\" rel=\"nofollow noopener noreferrer\">unp-<\/a>\u00a0\u4e00\u4e2a\u547d\u4ee4\u884c\u5de5\u5177\uff0c\u53ef\u4ee5\u8f7b\u677e\u5730\u89e3\u538b\u7f29\u6863\u6848\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"517db9\"><a class=\"reference-link\" name=\"\u516b\u3001  \u5e8f\u5217\u5316\"><\/a>\u516b\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E5%BA%8F%E5%88%97%E5%8C%96\">\u5e8f\u5217\u5316<\/a><\/h1>\n<p><em>\u7528\u4e8e\u5e8f\u5217\u5316\u590d\u6742\u6570\u636e\u7c7b\u578b\u7684\u5e93<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/marshmallow-code\/marshmallow\" rel=\"nofollow noopener noreferrer\">marshmallow-<\/a>\u00a0\u4e00\u4e2a\u8f7b\u91cf\u7ea7\u7684\u5e93\uff0c\u7528\u4e8e\u5c06\u590d\u6742\u7684\u5bf9\u8c61\u4e0e\u7b80\u5355\u7684 Python \u6570\u636e\u7c7b\u578b\u76f8\u4e92\u8f6c\u6362\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/TkTech\/pysimdjson\" rel=\"nofollow noopener noreferrer\">pysimdjson<\/a>\u00a0&#8211; \u4e00\u4e2a Python \u7ed1\u5b9a\u00a0<a href=\"https:\/\/github.com\/lemire\/simdjson\" rel=\"nofollow noopener noreferrer\">simdjson<\/a>\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/python-rapidjson\/python-rapidjson\" rel=\"nofollow noopener noreferrer\">python-rapidjson<\/a>&#8211; \u4e00\u4e2a Python \u5305\u88c5\u5468\u56f4\u00a0<a href=\"https:\/\/github.com\/Tencent\/rapidjson\" rel=\"nofollow noopener noreferrer\">RapidJSON<\/a>\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/esnme\/ultrajson\" rel=\"nofollow noopener noreferrer\">ultrajson-<\/a>\u00a0\u4f7f\u7528 Python \u7ed1\u5b9a\u7528 C \u7f16\u5199\u7684\u5feb\u901f JSON \u89e3\u7801\u5668\u548c\u7f16\u7801\u5668\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"c8582a\"><a class=\"reference-link\" name=\"\u4e5d\u3001  \u4ee3\u7801\u5206\u6790\u3001\u6d4b\u8bd5\"><\/a>\u4e5d\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E4%BB%A3%E7%A0%81%E5%88%86%E6%9E%90%E3%80%81%E6%B5%8B%E8%AF%95\">\u4ee3\u7801\u5206\u6790\u3001\u6d4b\u8bd5<\/a><\/h1>\n<h2 id=\"19a136\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7801\u8d28\u91cf\u68c0\u67e5\u5668\u7684\u5de5\u5177\u3002\u53e6\u8bf7\u53c2\u9605  \u4ee4\u4eba\u656c\u754f\u7684\u9759\u6001\u5206\u6790 \u3002&lt;\/em&gt;\"><\/a><em>\u7801\u8d28\u91cf\u68c0\u67e5\u5668\u7684\u5de5\u5177\u3002\u53e6\u8bf7\u53c2\u9605<a href=\"https:\/\/github.com\/mre\/awesome-static-analysis\" rel=\"nofollow noopener noreferrer\">\u4ee4\u4eba\u656c\u754f\u7684\u9759\u6001\u5206\u6790<\/a>\u3002<\/em><\/h2>\n<ul>\n<li>\u4ee3\u7801\u5206\u6790\n<ul>\n<li><a href=\"https:\/\/github.com\/coala\/coala\/\" rel=\"nofollow noopener noreferrer\">Coala-<\/a>\u00a0\u8bed\u8a00\u72ec\u7acb\u4e14\u6613\u4e8e\u6269\u5c55\u7684\u4ee3\u7801\u5206\u6790\u5e94\u7528\u7a0b\u5e8f\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/scottrogowski\/code2flow\" rel=\"nofollow noopener noreferrer\">code2flow-<\/a>\u00a0\u5c06\u60a8\u7684 Python \u548c JavaScript \u4ee3\u7801\u8f6c\u6362\u4e3a DOT \u6d41\u7a0b\u56fe\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/PyCQA\/prospector\" rel=\"nofollow noopener noreferrer\">prospector<\/a>&#8211; \u5206\u6790 Python \u4ee3\u7801\u7684\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/gak\/pycallgraph\" rel=\"nofollow noopener noreferrer\">pycallgraph-<\/a>\u00a0\u4e00\u4e2a\u53ef\u89c6\u5316 Python \u5e94\u7528\u7a0b\u5e8f\u6d41\u7a0b\uff08\u8c03\u7528\u56fe\uff09\u7684\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/jendrikseipp\/vulture\" rel=\"nofollow noopener noreferrer\">vulture-<\/a>\u00a0\u67e5\u627e\u548c\u5206\u6790\u65e0\u6548\u7684 Python \u4ee3\u7801\u7684\u5de5\u5177\u3002<\/li>\n<\/ul>\n<\/li>\n<li>Code Linters\n<ul>\n<li><a href=\"https:\/\/pypi.org\/project\/flake8\/\" rel=\"nofollow noopener noreferrer\">flake8<\/a>\u00a0&#8211; \u4e00\u4e2a\u5305\u88c5\u5668\u00a0<code>pycodestyle<\/code>\uff0c<code>pyflakes<\/code>\u00a0\u548c\u9ea6\u51ef\u5e03\u3002\n<ul>\n<li><a href=\"https:\/\/github.com\/DmytroLitvinov\/awesome-flake8-extensions\" rel=\"nofollow noopener noreferrer\">\u5f88\u68d2\u7684\u7247\u72b6 8 \u6269\u5c55<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/github.com\/klen\/pylama\" rel=\"nofollow noopener noreferrer\">pylama-<\/a>\u00a0\u7528\u4e8e Python \u548c JavaScript \u7684\u4ee3\u7801\u5ba1\u6838\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/www.pylint.org\/\" rel=\"nofollow noopener noreferrer\">pylint-<\/a>\u00a0\u5b8c\u5168\u53ef\u5b9a\u5236\u7684\u6e90\u4ee3\u7801\u5206\u6790\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/wemake-services\/wemake-python-styleguide\" rel=\"nofollow noopener noreferrer\">wemake-python-styleguide-<\/a>\u00a0\u6709\u53f2\u4ee5\u6765\u6700\u4e25\u683c\uff0c\u6700\u81ea\u4ee5\u4e3a\u662f\u7684 python\u00a0<a href=\"https:\/\/github.com\/wemake-services\/wemake-python-styleguide\" rel=\"nofollow noopener noreferrer\">linter<\/a>\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u4ee3\u7801\u683c\u5f0f\u5316\u7a0b\u5e8f\n<ul>\n<li><a href=\"https:\/\/github.com\/python\/black\" rel=\"nofollow noopener noreferrer\">black<\/a>\u00a0\u2013\u6beb\u4e0d\u59a5\u534f\u7684 Python \u4ee3\u7801\u683c\u5f0f\u5316\u7a0b\u5e8f\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/timothycrosley\/isort\" rel=\"nofollow noopener noreferrer\">isort-<\/a>\u00a0\u7528\u4e8e\u5bf9\u5bfc\u5165\u8fdb\u884c\u6392\u5e8f\u7684 Python \u5b9e\u7528\u7a0b\u5e8f \/ \u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/google\/yapf\" rel=\"nofollow noopener noreferrer\">yapf-<\/a>\u00a0\u53e6\u4e00\u4e2a\u6765\u81ea Google \u7684 Python \u4ee3\u7801\u683c\u5f0f\u5316\u7a0b\u5e8f\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u9759\u6001\u7c7b\u578b\u68c0\u67e5\u5668\uff0c\u53e6\u8bf7\u53c2\u89c1\u00a0<a href=\"https:\/\/github.com\/typeddjango\/awesome-python-typing\" rel=\"nofollow noopener noreferrer\">awesome-python-typing<\/a>\n<ul>\n<li><a href=\"http:\/\/mypy-lang.org\/\" rel=\"nofollow noopener noreferrer\">mypy-<\/a>\u00a0\u5728\u7f16\u8bd1\u671f\u95f4\u68c0\u67e5\u53d8\u91cf\u7c7b\u578b\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/facebook\/pyre-check\" rel=\"nofollow noopener noreferrer\">pyre-check-<\/a>\u00a0\u6027\u80fd\u7c7b\u578b\u68c0\u67e5\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/python\/typeshed\" rel=\"nofollow noopener noreferrer\">typeshed-<\/a>\u00a0\u5177\u6709\u9759\u6001\u7c7b\u578b\u7684 Python \u5e93\u5b58<a href=\"https:\/\/github.com\/python\/typeshed\" rel=\"nofollow noopener noreferrer\">\u6839\u7684<\/a>\u96c6\u5408\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u9759\u6001\u7c7b\u578b\u6ce8\u91ca\u751f\u6210\u5668\n<ul>\n<li><a href=\"https:\/\/github.com\/Instagram\/MonkeyType\" rel=\"nofollow noopener noreferrer\">MonkeyType-<\/a>\u00a0\u4e00\u4e2a\u7528\u4e8e Python \u7684\u7cfb\u7edf\uff0c\u901a\u8fc7\u6536\u96c6\u8fd0\u884c\u65f6\u7c7b\u578b\u6765\u751f\u6210\u9759\u6001\u7c7b\u578b\u6ce8\u91ca\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dropbox\/pyannotate\" rel=\"nofollow noopener noreferrer\">pyannotate-<\/a>\u00a0\u81ea\u52a8\u751f\u6210 PEP-484 \u6ce8\u91ca\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/google\/pytype\" rel=\"nofollow noopener noreferrer\">pytype<\/a>\u00a0-pytype \u68c0\u67e5\u5e76\u63a8\u65ad Python \u4ee3\u7801\u7684\u7c7b\u578b &#8211; \u65e0\u9700\u7c7b\u578b\u6ce8\u91ca\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2 id=\"eb7ddd\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u6e17\u900f\u6d4b\u8bd5\u7684\u6846\u67b6\u548c\u5de5\u5177\u3002&lt;\/em&gt;\"><\/a><em>\u6e17\u900f\u6d4b\u8bd5\u7684\u6846\u67b6\u548c\u5de5\u5177\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/Manisso\/fsociety\" rel=\"nofollow noopener noreferrer\">fsociety-<\/a>\u00a0\u6e17\u900f\u6d4b\u8bd5\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/trustedsec\/social-engineer-toolkit\" rel=\"nofollow noopener noreferrer\">setoolkit-<\/a>\u00a0\u793e\u4f1a\u5de5\u7a0b\u7684\u5de5\u5177\u5305\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/sqlmapproject\/sqlmap\" rel=\"nofollow noopener noreferrer\">sqlmap-<\/a>\u00a0\u81ea\u52a8 SQL \u6ce8\u5165\u548c\u6570\u636e\u5e93\u63a5\u7ba1\u5de5\u5177\u3002<\/li>\n<\/ul>\n<h2 id=\"593f21\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u6d4b\u8bd5\u4ee3\u7801\u5e93\u548c\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u6d4b\u8bd5\u4ee3\u7801\u5e93\u548c\u751f\u6210\u6d4b\u8bd5\u6570\u636e\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li>\u6d4b\u8bd5\u6846\u67b6\n<ul>\n<li><a href=\"https:\/\/github.com\/HypothesisWorks\/hypothesis\" rel=\"nofollow noopener noreferrer\">hypothesis<\/a>\u00a0\u2013\u5047\u8bbe\u662f\u4e00\u4e2a\u9ad8\u7ea7\u7684 Quickcheck \u6837\u5f0f\u57fa\u4e8e\u5c5e\u6027\u7684\u6d4b\u8bd5\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/nose-devs\/nose2\" rel=\"nofollow noopener noreferrer\">nose2<\/a>\u00a0<a href=\"https:\/\/github.com\/nose-devs\/nose2\" rel=\"nofollow noopener noreferrer\">&#8211;<\/a><code>nose<\/code>\u00a0\u57fa\u4e8e `unittest2\u3002\u7684\u540e\u7ee7\u8005\u3002<\/li>\n<li><a href=\"https:\/\/docs.pytest.org\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">pytest-<\/a>\u00a0\u4e00\u4e2a\u6210\u719f\u7684\u529f\u80fd\u9f50\u5168\u7684 Python \u6d4b\u8bd5\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/robotframework\/robotframework\" rel=\"nofollow noopener noreferrer\">Robot Framework<\/a>\u00a0\u901a\u7528\u7684\u6d4b\u8bd5\u81ea\u52a8\u5316\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/unittest.html\" rel=\"nofollow noopener noreferrer\">unittest-<\/a>\uff08Python \u6807\u51c6\u5e93\uff09\u5355\u5143\u6d4b\u8bd5\u6846\u67b6\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u6d4b\u8bd5\u9009\u624b\n<ul>\n<li><a href=\"https:\/\/github.com\/CleanCut\/green\" rel=\"nofollow noopener noreferrer\">green<\/a>\u00a0&#8211; \u5e72\u51c0\uff0c\u591a\u5f69\u7684\u6d4b\u8bd5\u8fd0\u884c\u5668\u3002<\/li>\n<li><a href=\"http:\/\/nestorsalceda.github.io\/mamba\/\" rel=\"nofollow noopener noreferrer\">mamba<\/a>\u00a0-Python \u7684<a href=\"http:\/\/nestorsalceda.github.io\/mamba\/\" rel=\"nofollow noopener noreferrer\">\u6743\u5a01<\/a>\u6d4b\u8bd5\u5de5\u5177\u3002\u751f\u4e8e BDD \u7684\u65d7\u5e1c\u4e0b\u3002<\/li>\n<li><a href=\"https:\/\/tox.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">tox-<\/a>\u00a0\u81ea\u52a8\u6784\u5efa\u548c\u6d4b\u8bd5\u591a\u4e2a Python \u7248\u672c\u7684\u53d1\u884c\u7248<\/li>\n<\/ul>\n<\/li>\n<li>GUI \/ Web \u6d4b\u8bd5\n<ul>\n<li><a href=\"https:\/\/github.com\/locustio\/locust\" rel=\"nofollow noopener noreferrer\">locust-<\/a>\u00a0\u7528 Python \u7f16\u5199\u7684\u53ef\u6269\u5c55\u7528\u6237\u8d1f\u8f7d\u6d4b\u8bd5\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/asweigart\/pyautogui\" rel=\"nofollow noopener noreferrer\">PyAutoGUI<\/a>\u00a0-PyAutoGUI \u662f\u9002\u7528\u4e8e\u4eba\u7c7b\u7684\u8de8\u5e73\u53f0 GUI \u81ea\u52a8\u5316 Python \u6a21\u5757\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/kiwicom\/schemathesis\" rel=\"nofollow noopener noreferrer\">Schemathesis-<\/a>\u00a0\u7528\u4e8e\u5bf9\u57fa\u4e8e Open API \/ Swagger \u89c4\u8303\u6784\u5efa\u7684 Web \u5e94\u7528\u7a0b\u5e8f\u8fdb\u884c\u57fa\u4e8e\u5c5e\u6027\u7684\u81ea\u52a8\u6d4b\u8bd5\u7684\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/pypi.org\/project\/selenium\/\" rel=\"nofollow noopener noreferrer\">Selenium<\/a>\u00a0&#8211;\u00a0<a href=\"http:\/\/www.seleniumhq.org\/\" rel=\"nofollow noopener noreferrer\">Selenium<\/a>\u00a0WebDriver \u7684 Python \u7ed1\u5b9a\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/seatgeek\/sixpack\" rel=\"nofollow noopener noreferrer\">sixpack-<\/a>\u00a0\u4e0e\u8bed\u8a00\u65e0\u5173\u7684 A \/ B \u6d4b\u8bd5\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/cobrateam\/splinter\" rel=\"nofollow noopener noreferrer\">splinter-<\/a>\u00a0\u7528\u4e8e\u6d4b\u8bd5 Web \u5e94\u7528\u7a0b\u5e8f\u7684\u5f00\u6e90\u5de5\u5177\u3002<\/li>\n<\/ul>\n<\/li>\n<li>Mock\n<ul>\n<li><a href=\"https:\/\/pypi.org\/project\/doublex\/\" rel=\"nofollow noopener noreferrer\">doublex-<\/a>\u00a0\u5f3a\u5927\u7684 Python \u6d4b\u8bd5\u6846\u67b6\u52a0\u500d\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/spulec\/freezegun\" rel=\"nofollow noopener noreferrer\">Frozengun-<\/a>\u00a0\u901a\u8fc7<a href=\"https:\/\/github.com\/spulec\/freezegun\" rel=\"nofollow noopener noreferrer\">\u6a21\u62df<\/a>\u00a0datetime \u6a21\u5757\u6765\u7a7f\u8d8a\u65f6\u95f4\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/patrys\/httmock\" rel=\"nofollow noopener noreferrer\">httmock-<\/a>\u00a0\u4e00\u4e2a\u9488\u5bf9 Python 2.6 + \u548c 3.2 + \u7684\u8bf7\u6c42\u7684\u6a21\u62df\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/gabrielfalcao\/HTTPretty\" rel=\"nofollow noopener noreferrer\">httpretty-<\/a>\u00a0\u9002\u7528\u4e8e Python \u7684 HTTP \u8bf7\u6c42\u6a21\u62df\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/unittest.mock.html\" rel=\"nofollow noopener noreferrer\">mock<\/a>-\uff08Python \u6807\u51c6\u5e93\uff09\u4e00\u4e2a<a href=\"https:\/\/docs.python.org\/3\/library\/unittest.mock.html\" rel=\"nofollow noopener noreferrer\">\u6a21\u62df<\/a>\u548c\u4fee\u8865\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/mindflayer\/python-mocket\" rel=\"nofollow noopener noreferrer\">mocket<\/a>\u00a0&#8211; \u5177\u6709 gevent \/asyncio\/ SSL \u652f\u6301\u7684\u5957\u63a5\u5b57\u6a21\u62df\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/getsentry\/responses\" rel=\"nofollow noopener noreferrer\">responses<\/a>\u00a0\u4e00\u4e2a\u5b9e\u7528\u7a0b\u5e8f\u5e93\uff0c\u7528\u4e8e\u6a21\u62df\u8bf7\u6c42 Python \u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/kevin1024\/vcrpy\" rel=\"nofollow noopener noreferrer\">VCR.py-<\/a>\u00a0\u8bb0\u5f55\u5e76\u91cd\u653e\u6d4b\u8bd5\u4e2d\u7684 HTTP \u4ea4\u4e92\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u5bf9\u8c61\u5de5\u5382\n<ul>\n<li><a href=\"https:\/\/github.com\/FactoryBoy\/factory_boy\" rel=\"nofollow noopener noreferrer\">factory_boy<\/a>\u00a0-Python \u7684\u6d4b\u8bd5\u88c5\u7f6e\u66ff\u4ee3\u54c1\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/klen\/mixer\" rel=\"nofollow noopener noreferrer\">mixer<\/a>&#8211; \u53e6\u4e00\u79cd\u706f\u5177\u66f4\u6362\u3002\u652f\u6301 Django\uff0cFlask\uff0cSQLAlchemy\uff0cPeewee \u7b49<\/li>\n<li><a href=\"https:\/\/github.com\/vandersonmota\/model_mommy\" rel=\"nofollow noopener noreferrer\">model_mommy-<\/a>\u00a0\u521b\u5efa\u968f\u673a\u5939\u5177\u4ee5\u5728 Django \u4e2d\u8fdb\u884c\u6d4b\u8bd5\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u4ee3\u7801\u8986\u76d6\u7387\n<ul>\n<li><a href=\"https:\/\/pypi.org\/project\/coverage\/\" rel=\"nofollow noopener noreferrer\">coverage-<\/a>\u00a0\u4ee3\u7801\u8986\u76d6\u7387\u5ea6\u91cf\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u4f2a\u6570\u636e\n<ul>\n<li><a href=\"https:\/\/github.com\/emirozer\/fake2db\" rel=\"nofollow noopener noreferrer\">fake2db-<\/a>\u00a0\u4f2a\u6570\u636e\u5e93\u751f\u6210\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/joke2k\/faker\" rel=\"nofollow noopener noreferrer\">faker-<\/a>\u00a0\u4e00\u4e2a\u751f\u6210\u4f2a\u9020\u6570\u636e\u7684 Python \u5305\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/lk-geimfari\/mimesis\" rel=\"nofollow noopener noreferrer\">mimesis-<\/a>\u00a0\u662f\u4e00\u4e2a Python \u5e93\uff0c\u53ef\u5e2e\u52a9\u60a8\u751f\u6210\u865a\u5047\u6570\u636e\u3002<\/li>\n<li><a href=\"https:\/\/pypi.org\/project\/radar\/\" rel=\"nofollow noopener noreferrer\">radar<\/a>\u00a0&#8211; \u751f\u6210\u968f\u673a\u7684\u65e5\u671f\u65f6\u95f4 \/ \u65f6\u95f4\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h1 id=\"a8b408\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u9a8c\u8bc1\u6570\u636e\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u9a8c\u8bc1\u6570\u636e\u7684\u5e93\u3002<\/em><\/h1>\n<ul>\n<li><a href=\"https:\/\/github.com\/pyeve\/cerberus\" rel=\"nofollow noopener noreferrer\">Cerberus-<\/a>\u00a0\u4e00\u4e2a\u8f7b\u91cf\u7ea7\u548c\u53ef\u6269\u5c55\u7684\u6570\u636e\u9a8c\u8bc1\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/docs.pylonsproject.org\/projects\/colander\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">colander-<\/a>\u00a0\u9a8c\u8bc1\u548c\u53cd\u5e8f\u5217\u5316\u901a\u8fc7 XML\uff0cJSON \u548c HTML \u8868\u5355\u53d1\u5e03\u83b7\u5f97\u7684\u6570\u636e\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/Julian\/jsonschema\" rel=\"nofollow noopener noreferrer\">jsonschema<\/a>\u00a0&#8211; Python \u7684\u00a0<a href=\"http:\/\/json-schema.org\/\" rel=\"nofollow noopener noreferrer\">JSON \u6a21\u5f0f\u7684<\/a>\u5b9e\u73b0\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/keleshev\/schema\" rel=\"nofollow noopener noreferrer\">schema-<\/a>\u00a0\u7528\u4e8e\u9a8c\u8bc1 Python \u6570\u636e\u7ed3\u6784\u7684\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/schematics\/schematics\" rel=\"nofollow noopener noreferrer\">Schematics<\/a>\u00a0\u2013\u6570\u636e\u7ed3\u6784\u9a8c\u8bc1\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/podio\/valideer\" rel=\"nofollow noopener noreferrer\">valideer<\/a>\u00a0&#8211; \u8f7b\u91cf\u7ea7\u53ef\u6269\u5c55\u6570\u636e\u9a8c\u8bc1\u548c\u9002\u914d\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/alecthomas\/voluptuous\" rel=\"nofollow noopener noreferrer\">voluptuous<\/a>\u00a0&#8211; \u7684 &#8211; \u4e00\u4e2a Python \u6570\u636e\u9a8c\u8bc1\u5e93\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"8c859a\"><a class=\"reference-link\" name=\"\u5341\u3001  web\u6846\u67b6\"><\/a>\u5341\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#web%E6%A1%86%E6%9E%B6\">web \u6846\u67b6<\/a><\/h1>\n<p><em>\u4f20\u7edf\u7684\u5168\u6808 Web \u6846\u67b6\u3002\u53e6\u8bf7\u53c2\u9605\u00a0<a href=\"https:\/\/github.com\/vinta\/awesome-python#restful-api\" rel=\"nofollow noopener noreferrer\">RESTful API<\/a>\u3002<\/em><\/p>\n<ul>\n<li>\u540c\u6b65\n<ul>\n<li><a href=\"https:\/\/www.djangoproject.com\/\" rel=\"nofollow noopener noreferrer\">Django<\/a>\u00a0-Python \u4e2d\u6700\u6d41\u884c\u7684 Web \u6846\u67b6\u3002\n<ul>\n<li><a href=\"https:\/\/github.com\/shahraizali\/awesome-django\" rel=\"nofollow noopener noreferrer\">\u5f88\u68d2\u7684 django<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/wsvincent\/awesome-django\" rel=\"nofollow noopener noreferrer\">\u5f88\u68d2\u7684 django<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"http:\/\/flask.pocoo.org\/\" rel=\"nofollow noopener noreferrer\">Flask<\/a>\u00a0-Python \u7684\u5fae\u6846\u67b6\u3002\n<ul>\n<li><a href=\"https:\/\/github.com\/humiaozuzu\/awesome-flask\" rel=\"nofollow noopener noreferrer\">\u5f88\u68d2\u7684\u70e7\u74f6<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/pylonsproject.org\/\" rel=\"nofollow noopener noreferrer\">Pyramid-<\/a>\u00a0\u4e00\u4e2a\u5c0f\u578b\uff0c\u5feb\u901f\uff0c\u624e\u5b9e\u7684\u5f00\u6e90 Python Web \u6846\u67b6\u3002\n<ul>\n<li><a href=\"https:\/\/github.com\/uralbash\/awesome-pyramid\" rel=\"nofollow noopener noreferrer\">\u771f\u68d2\u91d1\u5b57\u5854<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/github.com\/MasoniteFramework\/masonite\" rel=\"nofollow noopener noreferrer\">Masonite-<\/a>\u00a0\u4ee5\u5f00\u53d1\u4eba\u5458\u4e3a\u4e2d\u5fc3\u7684\u73b0\u4ee3 Python Web \u6846\u67b6\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u5f02\u6b65\n<ul>\n<li><a href=\"http:\/\/www.tornadoweb.org\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">Tornado-<\/a>\u00a0\u4e00\u4e2a Web \u6846\u67b6\u548c\u5f02\u6b65\u7f51\u7edc\u5e93\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"b5ead0\"><a class=\"reference-link\" name=\"\u5341\u4e00\u3001  \u641c\u7d22\"><\/a>\u5341\u4e00\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E6%90%9C%E7%B4%A2\">\u641c\u7d22<\/a><\/h1>\n<h2 id=\"fe36e9\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u5bf9\u6570\u636e\u5efa\u7acb\u7d22\u5f15\u5e76\u6267\u884c\u641c\u7d22\u67e5\u8be2\u7684\u5e93\u548c\u8f6f\u4ef6\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u5bf9\u6570\u636e\u5efa\u7acb\u7d22\u5f15\u5e76\u6267\u884c\u641c\u7d22\u67e5\u8be2\u7684\u5e93\u548c\u8f6f\u4ef6\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/django-haystack\/django-haystack\" rel=\"nofollow noopener noreferrer\">django-haystack-<\/a>\u00a0\u6a21\u5757\u5316\u641c\u7d22 Django\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/elastic\/elasticsearch-dsl-py\" rel=\"nofollow noopener noreferrer\">elasticsearch-dsl-py<\/a>\u00a0-Elasticsearch \u7684\u5b98\u65b9\u9ad8\u7ea7 Python \u5ba2\u6237\u7aef\u3002<\/li>\n<li><a href=\"https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/client\/python-api\/current\/index.html\" rel=\"nofollow noopener noreferrer\">elasticsearch-py<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/www.elastic.co\/products\/elasticsearch\" rel=\"nofollow noopener noreferrer\">Elasticsearch<\/a>\u00a0\u7684\u5b98\u65b9\u4f4e\u5c42 Python \u5ba2\u6237\u7aef\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/django-haystack\/pysolr\" rel=\"nofollow noopener noreferrer\">pysolr<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/lucene.apache.org\/solr\/\" rel=\"nofollow noopener noreferrer\">Apache Solr \u7684<\/a>\u8f7b\u91cf\u7ea7 Python \u5305\u88c5\u5668\u3002<\/li>\n<li><a href=\"http:\/\/whoosh.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">whoosh-<\/a>\u00a0\u4e00\u4e2a\u5feb\u901f\u7684\u7eaf Python \u641c\u7d22\u5f15\u64ce\u5e93\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"a07970\"><a class=\"reference-link\" name=\"\u5341\u4e8c\u3001  \u65e5\u5fd7\u8bb0\u5f55\"><\/a>\u5341\u4e8c\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E6%97%A5%E5%BF%97%E8%AE%B0%E5%BD%95\">\u65e5\u5fd7\u8bb0\u5f55<\/a><\/h1>\n<p><em>\u7528\u4e8e\u751f\u6210\u548c\u4f7f\u7528\u65e5\u5fd7\u7684\u5e93\u3002<\/em><\/p>\n<ul>\n<li><a href=\"http:\/\/logbook.readthedocs.io\/en\/stable\/\" rel=\"nofollow noopener noreferrer\">logbook<\/a>\u00a0&#8211; &#8211; \u8bb0\u5f55 Python \u7684\u66ff\u6362\u8bb0\u5f55\u3002<\/li>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/logging.html\" rel=\"nofollow noopener noreferrer\">logging-<\/a>\uff08Python \u6807\u51c6\u5e93\uff09Python \u7684\u65e5\u5fd7\u8bb0\u5f55\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/Delgan\/loguru\" rel=\"nofollow noopener noreferrer\">loguru-<\/a>\u00a0\u65e8\u5728\u4ee5 Python \u5e26\u6765\u4ee4\u4eba\u6109\u60a6\u7684\u65e5\u5fd7\u8bb0\u5f55\u7684\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/getsentry\/sentry-python\" rel=\"nofollow noopener noreferrer\">sentry-<\/a>\u00a0python &#8211; \u9002\u7528\u4e8e Python \u7684 Sentry SDK\u3002<\/li>\n<li><a href=\"https:\/\/www.structlog.org\/en\/stable\/\" rel=\"nofollow noopener noreferrer\">structlog-<\/a>\u00a0\u7ed3\u6784\u5316\u65e5\u5fd7\u53d8\u5f97\u5bb9\u6613\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"6d22e3\"><a class=\"reference-link\" name=\"\u5341\u4e09\u3001  \u5e76\u53d1\u4e0e\u5e76\u884c\"><\/a>\u5341\u4e09\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E5%B9%B6%E5%8F%91%E4%B8%8E%E5%B9%B6%E8%A1%8C\">\u5e76\u53d1\u4e0e\u5e76\u884c<\/a><\/h1>\n<p><em>\u7528\u4e8e\u5e76\u53d1\u548c\u5e76\u884c\u6267\u884c\u7684\u5e93\u3002\u53e6\u8bf7\u53c2\u9605\u00a0<a href=\"https:\/\/github.com\/timofurrer\/awesome-asyncio\" rel=\"nofollow noopener noreferrer\">awesome-asyncio<\/a>\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/concurrent.futures.html\" rel=\"nofollow noopener noreferrer\">parallel.futures-<\/a>\uff08Python \u6807\u51c6\u5e93\uff09\u7528\u4e8e\u5f02\u6b65\u6267\u884c\u53ef\u8c03\u7528\u5bf9\u8c61\u7684\u9ad8\u7ea7\u63a5\u53e3\u3002<\/li>\n<li><a href=\"http:\/\/eventlet.net\/\" rel=\"nofollow noopener noreferrer\">eventlet-<\/a>\u00a0\u5177\u6709 WSGI \u652f\u6301\u7684\u5f02\u6b65\u6846\u67b6\u3002<\/li>\n<li><a href=\"http:\/\/www.gevent.org\/\" rel=\"nofollow noopener noreferrer\">gevent-<\/a>\u00a0\u4f7f\u7528\u00a0<a href=\"https:\/\/github.com\/python-greenlet\/greenlet\" rel=\"nofollow noopener noreferrer\">greenlet<\/a>\u00a0\u7684\u57fa\u4e8e\u534f\u7a0b\u7684 Python \u7f51\u7edc\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/multiprocessing.html\" rel=\"nofollow noopener noreferrer\">multiprocessing-<\/a>\uff08Python \u6807\u51c6\u5e93\uff09\u57fa\u4e8e\u8fdb\u7a0b\u7684\u5e76\u884c\u6027\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/soravux\/scoop\" rel=\"nofollow noopener noreferrer\">scoop<\/a>\u00a0-Python \u4e2d\u7684\u53ef\u4f38\u7f29\u5e76\u53d1\u64cd\u4f5c\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/MagicStack\/uvloop\" rel=\"nofollow noopener noreferrer\">uvloop &#8211; \u5728.NET \u4e4b\u4e0a<\/a>\u7684\u00a0<code>asyncio<\/code>\u00a0\u4e8b\u4ef6\u5faa\u73af\u7684\u8d85\u5feb\u901f\u5b9e\u73b0\u00a0<code>libuv<\/code>\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"fb1f89\"><a class=\"reference-link\" name=\"\u5341\u56db\u3001  \u4efb\u52a1\u961f\u5217\"><\/a>\u5341\u56db\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E4%BB%BB%E5%8A%A1%E9%98%9F%E5%88%97\">\u4efb\u52a1\u961f\u5217<\/a><\/h1>\n<p><em>\u7528\u4e8e\u5904\u7406\u4efb\u52a1\u961f\u5217\u7684\u5e93\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/docs.celeryproject.org\/en\/stable\/\" rel=\"nofollow noopener noreferrer\">celery-<\/a>\u00a0\u57fa\u4e8e\u5206\u5e03\u5f0f\u6d88\u606f\u4f20\u9012\u7684\u5f02\u6b65\u4efb\u52a1\u961f\u5217 \/ \u4f5c\u4e1a\u961f\u5217\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/Bogdanp\/dramatiq\" rel=\"nofollow noopener noreferrer\">Dramatiq-<\/a>\u00a0\u7528\u4e8e Python 3 \u7684\u5feb\u901f\u53ef\u9760\u7684\u540e\u53f0\u4efb\u52a1\u5904\u7406\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/coleifer\/huey\" rel=\"nofollow noopener noreferrer\">huey-<\/a>\u00a0\u5c0f\u591a\u7ebf\u7a0b\u4efb\u52a1\u961f\u5217\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pricingassistant\/mrq\" rel=\"nofollow noopener noreferrer\">mrq-<\/a>\u00a0\u4f7f\u7528 Redis \u548c gevent \u7684 Python \u4e2d\u7684\u5206\u5e03\u5f0f\u5de5\u4f5c\u8005\u4efb\u52a1\u961f\u5217\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/rq\/rq\" rel=\"nofollow noopener noreferrer\">rq<\/a>\u00a0-Python \u7684\u7b80\u5355\u4f5c\u4e1a\u961f\u5217\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"dfe356\"><a class=\"reference-link\" name=\"\u5341\u4e94\u3001  \u81ea\u7136\u8bed\u8a00\u5904\u7406\"><\/a>\u5341\u4e94\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E5%A4%84%E7%90%86\">\u81ea\u7136\u8bed\u8a00\u5904\u7406<\/a><\/h1>\n<p><em>\u7528\u4e8e\u4f7f\u7528\u4eba\u7c7b\u8bed\u8a00\u7684\u56fe\u4e66\u9986\u3002<\/em><\/p>\n<ul>\n<li>\u4e00\u822c\u7684\n<ul>\n<li><a href=\"https:\/\/github.com\/RaRe-Technologies\/gensim\" rel=\"nofollow noopener noreferrer\">gensim-<\/a>\u00a0\u4eba\u7c7b\u4e3b\u9898\u5efa\u6a21\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/saffsd\/langid.py\" rel=\"nofollow noopener noreferrer\">langid.py-<\/a>\u00a0\u72ec\u7acb\u7684\u8bed\u8a00\u8bc6\u522b\u7cfb\u7edf\u3002<\/li>\n<li><a href=\"http:\/\/www.nltk.org\/\" rel=\"nofollow noopener noreferrer\">nltk-<\/a>\u00a0\u7528\u4e8e\u6784\u5efa Python \u7a0b\u5e8f\u4ee5\u4f7f\u7528\u4eba\u7c7b\u8bed\u8a00\u6570\u636e\u7684\u9886\u5148\u5e73\u53f0\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/clips\/pattern\" rel=\"nofollow noopener noreferrer\">pattern-<\/a>\u00a0\u4e00\u4e2a Web \u6316\u6398\u6a21\u5757\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/aboSamoor\/polyglot\" rel=\"nofollow noopener noreferrer\">polyglot-<\/a>\u00a0\u652f\u6301\u6570\u767e\u79cd\u8bed\u8a00\u7684\u81ea\u7136\u8bed\u8a00\u7ba1\u9053\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/facebookresearch\/pytext\" rel=\"nofollow noopener noreferrer\">pytext \u7684<\/a>\u00a0&#8211; \u57fa\u4e8e PyTorch \u81ea\u7136\u8bed\u8a00\u5efa\u6a21\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/PetrochukM\/PyTorch-NLP\" rel=\"nofollow noopener noreferrer\">PyTorch-NLP-<\/a>\u00a0\u4e00\u79cd\u5de5\u5177\u5305\uff0c\u53ef\u7528\u4e8e\u7814\u7a76\u7684\u5feb\u901f\u6df1\u5ea6\u5b66\u4e60 NLP \u539f\u578b\u3002<\/li>\n<li><a href=\"https:\/\/spacy.io\/\" rel=\"nofollow noopener noreferrer\">spacy<\/a>\u00a0&#8211; \u4e00\u79cd\u7528\u4e8e Python \u548c\u7528 Cython \u5de5\u4e1a\u5f3a\u5ea6\u7684\u81ea\u7136\u8bed\u8a00\u5904\u7406\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/stanfordnlp\/stanza\" rel=\"nofollow noopener noreferrer\">Stanza<\/a>\u00a0-Stanford NLP Group \u7684\u5b98\u65b9 Python \u5e93\uff0c\u652f\u6301 60 \u591a\u79cd\u8bed\u8a00\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u4e2d\u56fd\u4eba\n<ul>\n<li><a href=\"https:\/\/github.com\/fighting41love\/funNLP\" rel=\"nofollow noopener noreferrer\">funNLP-<\/a>\u00a0\u4e2d\u56fd NLP \u7684\u5de5\u5177\u548c\u6570\u636e\u96c6\u7684\u96c6\u5408\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/fxsjy\/jieba\" rel=\"nofollow noopener noreferrer\">jieba-<\/a>\u00a0\u6700\u53d7\u6b22\u8fce\u7684\u4e2d\u6587\u6587\u672c\u5206\u5272\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/lancopku\/pkuseg-python\" rel=\"nofollow noopener noreferrer\">pkuseg-python-<\/a>\u00a0\u7528\u4e8e\u5404\u79cd\u9886\u57df\u7684\u4e2d\u6587\u5206\u8bcd\u7684\u5de5\u5177\u5305\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/isnowfy\/snownlp\" rel=\"nofollow noopener noreferrer\">snownlp-<\/a>\u00a0\u7528\u4e8e\u5904\u7406\u4e2d\u6587\u6587\u672c\u7684\u5e93\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"938b4d\"><a class=\"reference-link\" name=\"\u5341\u516d\u3001  \u6df1\u5ea6\u5b66\u4e60\u3001\u673a\u5668\u5b66\u4e60 \u3001  \u8ba1\u7b97\u673a\u89c6\u89c9\"><\/a>\u5341\u516d\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E3%80%81%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0\">\u6df1\u5ea6\u5b66\u4e60\u3001\u673a\u5668\u5b66\u4e60<\/a>\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89\">\u8ba1\u7b97\u673a\u89c6\u89c9<\/a><\/h1>\n<h2 id=\"93f02e\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u795e\u7ecf\u7f51\u7edc\u548c\u6df1\u5ea6\u5b66\u4e60\u6846\u67b6\u3002\u53e6\u8bf7\u53c2\u9605  \u771f\u68d2\u6df1\u5ea6\u5b66\u4e60 \u3002&lt;\/em&gt;\"><\/a><em>\u795e\u7ecf\u7f51\u7edc\u548c\u6df1\u5ea6\u5b66\u4e60\u6846\u67b6\u3002\u53e6\u8bf7\u53c2\u9605<a href=\"https:\/\/github.com\/ChristosChristofidis\/awesome-deep-learning\" rel=\"nofollow noopener noreferrer\">\u771f\u68d2\u6df1\u5ea6\u5b66\u4e60<\/a>\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/BVLC\/caffe\" rel=\"nofollow noopener noreferrer\">caffe-<\/a>\u00a0\u6df1\u5ea6\u5b66\u4e60\u7684\u5feb\u901f\u5f00\u653e\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/keras-team\/keras\" rel=\"nofollow noopener noreferrer\">keras-<\/a>\u00a0\u4e00\u4e2a\u9ad8\u7ea7\u795e\u7ecf\u7f51\u7edc\u5e93\uff0c\u80fd\u591f\u5728 TensorFlow \u6216 Theano \u4e4b\u4e0a\u8fd0\u884c\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dmlc\/mxnet\" rel=\"nofollow noopener noreferrer\">mxnet-<\/a>\u00a0\u4e13\u4e3a\u6548\u7387\u548c\u7075\u6d3b\u6027\u800c\u8bbe\u8ba1\u7684\u6df1\u5ea6\u5b66\u4e60\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pytorch\/pytorch\" rel=\"nofollow noopener noreferrer\">pytorch-<\/a>\u00a0\u5177\u6709\u5f3a\u5927 GPU \u52a0\u901f\u529f\u80fd\u7684 Python \u4e2d\u7684\u5f20\u91cf\u548c\u52a8\u6001\u795e\u7ecf\u7f51\u7edc\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/SerpentAI\/SerpentAI\" rel=\"nofollow noopener noreferrer\">SerpentAI-<\/a>\u00a0\u6e38\u620f\u4ee3\u7406\u6846\u67b6\u3002\u4f7f\u7528\u4efb\u4f55\u89c6\u9891\u6e38\u620f\u4f5c\u4e3a\u6df1\u5ea6\u5b66\u4e60\u6c99\u7bb1\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/tensorflow\/tensorflow\" rel=\"nofollow noopener noreferrer\">tensorflow-<\/a>\u00a0\u7531 Google \u521b\u5efa\u7684\u6700\u53d7\u6b22\u8fce\u7684\u6df1\u5ea6\u5b66\u4e60\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/Theano\/Theano\" rel=\"nofollow noopener noreferrer\">Theano-<\/a>\u00a0\u4e00\u4e2a\u7528\u4e8e\u5feb\u901f\u6570\u503c\u8ba1\u7b97\u7684\u5e93\u3002<\/li>\n<\/ul>\n<h2 id=\"d891e3\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u673a\u5668\u5b66\u4e60\u56fe\u4e66\u9986\u3002\u53e6\u8bf7\u53c2\u9605  \u5f88\u68d2\u7684\u673a\u5668\u5b66\u4e60 \u3002&lt;\/em&gt;\"><\/a><em>\u673a\u5668\u5b66\u4e60\u56fe\u4e66\u9986\u3002\u53e6\u8bf7\u53c2\u9605<a href=\"https:\/\/github.com\/josephmisiti\/awesome-machine-learning#python\" rel=\"nofollow noopener noreferrer\">\u5f88\u68d2\u7684\u673a\u5668\u5b66\u4e60<\/a>\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/openai\/gym\" rel=\"nofollow noopener noreferrer\">\u5065\u8eab\u623f<\/a>\u00a0&#8211; \u7528\u4e8e\u5f00\u53d1\u548c\u6bd4\u8f83\u5f3a\u5316\u5b66\u4e60\u7b97\u6cd5\u7684\u5de5\u5177\u5305\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/h2oai\/h2o-3\" rel=\"nofollow noopener noreferrer\">H2O-<\/a>\u00a0\u5f00\u6e90\u5feb\u901f\u53ef\u6269\u5c55\u673a\u5668\u5b66\u4e60\u5e73\u53f0\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/benhamner\/Metrics\" rel=\"nofollow noopener noreferrer\">\u6307\u6807<\/a>\u00a0&#8211; \u673a\u5668\u5b66\u4e60\u8bc4\u4f30\u6307\u6807\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/numenta\/nupic\" rel=\"nofollow noopener noreferrer\">NuPIC<\/a>\u00a0-Numenta \u667a\u80fd\u8ba1\u7b97\u5e73\u53f0\u3002<\/li>\n<li><a href=\"http:\/\/scikit-learn.org\/\" rel=\"nofollow noopener noreferrer\">scikit-learn-<\/a>\u00a0\u6700\u53d7\u6b22\u8fce\u7684\u673a\u5668\u5b66\u4e60 Python \u5e93\u3002<\/li>\n<li><a href=\"http:\/\/spark.apache.org\/docs\/latest\/ml-guide.html\" rel=\"nofollow noopener noreferrer\">Spark ML<\/a>\u00a0&#8211;\u00a0<a href=\"http:\/\/spark.apache.org\/\" rel=\"nofollow noopener noreferrer\">Apache Spark<\/a>\u00a0\u7684\u53ef\u6269\u5c55\u673a\u5668\u5b66\u4e60\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/josephreisinger\/vowpal_porpoise\" rel=\"nofollow noopener noreferrer\">vowpal_porpoise-<\/a>\u00a0\u7528\u4e8e\u00a0<a href=\"https:\/\/github.com\/JohnLangford\/vowpal_wabbit\/\" rel=\"nofollow noopener noreferrer\">Vowpal Wabbit \u7684<\/a>\u8f7b\u91cf\u7ea7 Python \u5305\u88c5\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dmlc\/xgboost\" rel=\"nofollow noopener noreferrer\">xgboost-<\/a>\u00a0\u4e00\u4e2a\u53ef\u6269\u5c55\uff0c\u53ef\u79fb\u690d\u548c\u5206\u5e03\u5f0f\u7684\u68af\u5ea6\u589e\u5f3a\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/mindsdb\/mindsdb\" rel=\"nofollow noopener noreferrer\">MindsDB<\/a>\u00a0-MindsDB \u662f\u73b0\u6709\u6570\u636e\u5e93\u7684\u5f00\u6e90 AI \u5c42\uff0c\u53ef\u8ba9\u60a8\u4f7f\u7528\u6807\u51c6\u67e5\u8be2\u8f7b\u677e\u5730\u5f00\u53d1\uff0c\u8bad\u7ec3\u548c\u90e8\u7f72\u6700\u65b0\u7684\u673a\u5668\u5b66\u4e60\u6a21\u578b\u3002<\/li>\n<\/ul>\n<h2 id=\"6b46b6\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u8ba1\u7b97\u673a\u89c6\u89c9\u56fe\u4e66\u9986\u3002&lt;\/em&gt;\"><\/a><em>\u8ba1\u7b97\u673a\u89c6\u89c9\u56fe\u4e66\u9986\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/JaidedAI\/EasyOCR\" rel=\"nofollow noopener noreferrer\">EasyOCR-<\/a>\u00a0\u652f\u6301 40 \u591a\u79cd\u8bed\u8a00\u7684\u5373\u7528\u578b OCR\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/ageitgey\/face_recognition\" rel=\"nofollow noopener noreferrer\">\u4eba\u8138\u8bc6\u522b<\/a>\u00a0&#8211; \u7b80\u5355\u7684\u4eba\u8138\u8bc6\u522b\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/kornia\/kornia\/\" rel=\"nofollow noopener noreferrer\">Kornia<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/github.com\/kornia\/kornia\/\" rel=\"nofollow noopener noreferrer\">PyTorch \u7684<\/a>\u5f00\u6e90\u53ef\u533a\u5206\u8ba1\u7b97\u673a\u89c6\u89c9\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/opencv.org\/\" rel=\"nofollow noopener noreferrer\">OpenCV-<\/a>\u00a0\u5f00\u6e90\u8ba1\u7b97\u673a\u89c6\u89c9\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/madmaze\/pytesseract\" rel=\"nofollow noopener noreferrer\">pytesseract<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/github.com\/tesseract-ocr\" rel=\"nofollow noopener noreferrer\">Google Tesseract OCR \u7684<\/a>\u5305\u88c5\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/sightmachine\/SimpleCV\" rel=\"nofollow noopener noreferrer\">SimpleCV-<\/a>\u00a0\u7528\u4e8e\u6784\u5efa\u8ba1\u7b97\u673a\u89c6\u89c9\u5e94\u7528\u7a0b\u5e8f\u7684\u5f00\u6e90\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/sirfz\/tesserocr\" rel=\"nofollow noopener noreferrer\">tesserocr-<\/a><code>tesseract-ocr<\/code>\u00a0\u7528\u4e8e OCR \u7684 API \u7684\u53e6\u4e00\u79cd\u7b80\u5355\uff0c\u5bf9\u6795\u5934\u53cb\u597d\u7684\u5305\u88c5\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"c1ee72\"><a class=\"reference-link\" name=\"\u5341\u4e03\u3001  \u6570\u636e\u5206\u6790\u3001\u53ef\u89c6\u5316\"><\/a>\u5341\u4e03\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90%E3%80%81%E5%8F%AF%E8%A7%86%E5%8C%96\">\u6570\u636e\u5206\u6790\u3001\u53ef\u89c6\u5316<\/a><\/h1>\n<h2 id=\"db44a0\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u6570\u636e\u5206\u6790\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u6570\u636e\u5206\u6790\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/awslabs\/aws-data-wrangler\" rel=\"nofollow noopener noreferrer\">AWS Data Wrangler<\/a>\u00a0-AWS \u4e0a\u7684 Pandas\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/blaze\/blaze\" rel=\"nofollow noopener noreferrer\">Blaze<\/a>\u00a0-NumPy \u548c Pandas \u8fde\u63a5\u5230\u5927\u6570\u636e\u3002<\/li>\n<li>Pandas \u754c\u9762\u4e2d\u7684\u00a0<a href=\"https:\/\/github.com\/mining\/mining\" rel=\"nofollow noopener noreferrer\">Open Mining-<\/a>\u00a0\u5546\u4e1a\u667a\u80fd\uff08BI\uff09\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/ironmussa\/Optimus\" rel=\"nofollow noopener noreferrer\">Optimus<\/a>\u00a0\u2013\u654f\u6377\u6570\u636e\u79d1\u5b66\u7684\u5de5\u4f5c\u6d41\u7a0b\u53d8\u5f97\u5bb9\u6613\u4e0e PySpark\u3002<\/li>\n<li><a href=\"https:\/\/orange.biolab.si\/\" rel=\"nofollow noopener noreferrer\">Orange<\/a>\u00a0\u2013\u901a\u8fc7\u53ef\u89c6\u5316\u7f16\u7a0b\u6216\u811a\u672c\u8fdb\u884c\u6570\u636e\u6316\u6398\uff0c\u6570\u636e\u53ef\u89c6\u5316\uff0c\u5206\u6790\u548c\u673a\u5668\u5b66\u4e60\u3002<\/li>\n<li><a href=\"http:\/\/pandas.pydata.org\/\" rel=\"nofollow noopener noreferrer\">Pandas-<\/a>\u00a0\u4e00\u4e2a\u63d0\u4f9b\u9ad8\u6027\u80fd\uff0c\u6613\u4e8e\u4f7f\u7528\u7684\u6570\u636e\u7ed3\u6784\u548c\u6570\u636e\u5206\u6790\u5de5\u5177\u7684\u5e93\u3002<\/li>\n<\/ul>\n<h2 id=\"bc53ee\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u53ef\u89c6\u5316\u6570\u636e\u7684\u5e93\u3002\u53e6\u8bf7\u53c2\u9605  awesome-javascript \u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u53ef\u89c6\u5316\u6570\u636e\u7684\u5e93\u3002\u53e6\u8bf7\u53c2\u9605\u00a0<a href=\"https:\/\/github.com\/sorrycc\/awesome-javascript#data-visualization\" rel=\"nofollow noopener noreferrer\">awesome-javascript<\/a>\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/altair-viz\/altair\" rel=\"nofollow noopener noreferrer\">Altair-<\/a>\u00a0\u7528\u4e8e Python \u7684\u58f0\u660e\u6027\u7edf\u8ba1\u53ef\u89c6\u5316\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/bokeh\/bokeh\" rel=\"nofollow noopener noreferrer\">Bokeh-<\/a>\u00a0\u7528\u4e8e Python \u7684\u4ea4\u4e92\u5f0f Web \u7ed8\u56fe\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/bloomberg\/bqplot\" rel=\"nofollow noopener noreferrer\">bqplot<\/a>\u00a0-Jupyter Notebook \u7684\u4ea4\u4e92\u5f0f\u7ed8\u56fe\u5e93<\/li>\n<li><a href=\"https:\/\/github.com\/SciTools\/cartopy\" rel=\"nofollow noopener noreferrer\">Cartopy-<\/a>\u00a0\u5177\u6709 matplotlib \u652f\u6301\u7684\u5236\u56fe python \u5e93<\/li>\n<li><a href=\"https:\/\/plot.ly\/products\/dash\/\" rel=\"nofollow noopener noreferrer\">\u77ed\u8dd1<\/a>\u00a0&#8211; \u5efa\u7acb\u5728\u70e7\u74f6\u9876\u90e8\uff0c\u53cd\u5e94\uff0cPlotly \u65e8\u5728\u5206\u6790 Web \u5e94\u7528\u7a0b\u5e8f\u3002\n<ul>\n<li><a href=\"https:\/\/github.com\/Acrotrend\/awesome-dash\" rel=\"nofollow noopener noreferrer\">\u5f88\u68d2\u7684\u7834\u6298\u53f7<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/github.com\/mingrammer\/diagrams\" rel=\"nofollow noopener noreferrer\">\u56fe\u8868<\/a>\u00a0&#8211; \u56fe\u8868\u4e3a\u4ee3\u7801\u3002<\/li>\n<li><a href=\"http:\/\/matplotlib.org\/\" rel=\"nofollow noopener noreferrer\">Matplotlib-<\/a>\u00a0\u4e00\u4e2a Python 2D \u7ed8\u56fe\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/has2k1\/plotnine\" rel=\"nofollow noopener noreferrer\">plotnine-<\/a>\u00a0\u57fa\u4e8e ggplot2 \u7684 Python \u56fe\u5f62\u8bed\u6cd5\u3002<\/li>\n<li><a href=\"http:\/\/www.pygal.org\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">Pygal-<\/a>\u00a0\u4e00\u4e2a Python SVG \u56fe\u8868\u521b\u5efa\u5668\u3002<\/li>\n<li><a href=\"https:\/\/pypi.org\/project\/pygraphviz\/\" rel=\"nofollow noopener noreferrer\">PyGraphviz<\/a>\u00a0&#8211;\u00a0<a href=\"http:\/\/www.graphviz.org\/\" rel=\"nofollow noopener noreferrer\">Graphviz \u7684<\/a>\u00a0Python \u63a5\u53e3\u3002<\/li>\n<li><a href=\"http:\/\/www.pyqtgraph.org\/\" rel=\"nofollow noopener noreferrer\">PyQtGraph-<\/a>\u00a0\u4ea4\u4e92\u5f0f\u548c\u5b9e\u65f6 2D \/ 3D \/ \u56fe\u50cf\u7ed8\u5236\u4ee5\u53ca\u79d1\u5b66 \/ \u5de5\u7a0b\u5c0f\u90e8\u4ef6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/mwaskom\/seaborn\" rel=\"nofollow noopener noreferrer\">Seaborn<\/a>\u00a0&#8211; \u4f7f\u7528 Matplotlib \u7edf\u8ba1\u6570\u636e\u53ef\u89c6\u5316\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/vispy\/vispy\" rel=\"nofollow noopener noreferrer\">VisPy-<\/a>\u00a0\u57fa\u4e8e OpenGL \u7684\u9ad8\u6027\u80fd\u79d1\u5b66\u53ef\u89c6\u5316\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"20b882\"><a class=\"reference-link\" name=\"\u5341\u516b\u3001  \u6570\u636e\u5e93\u9a71\u52a8\u7a0b\u5e8f\"><\/a>\u5341\u516b\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E6%95%B0%E6%8D%AE%E5%BA%93%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F\">\u6570\u636e\u5e93\u9a71\u52a8\u7a0b\u5e8f<\/a><\/h1>\n<h2 id=\"fffff8\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u8fde\u63a5\u548c\u64cd\u4f5c\u6570\u636e\u5e93\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u8fde\u63a5\u548c\u64cd\u4f5c\u6570\u636e\u5e93\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li>MySQL-\u00a0<a href=\"http:\/\/shlomi-noach.github.io\/awesome-mysql\/\" rel=\"nofollow noopener noreferrer\">\u5f88\u68d2\u7684 MySQL<\/a>\n<ul>\n<li><a href=\"https:\/\/github.com\/PyMySQL\/mysqlclient-python\" rel=\"nofollow noopener noreferrer\">mysqlclient-<\/a>\u00a0\u652f\u6301 Python 3 \u7684 MySQL \u8fde\u63a5\u5668\uff08<a href=\"https:\/\/sourceforge.net\/projects\/mysql-python\/\" rel=\"nofollow noopener noreferrer\">mysql-python<\/a>\u00a0fork\uff09\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/PyMySQL\/PyMySQL\" rel=\"nofollow noopener noreferrer\">PyMySQL-<\/a>\u00a0\u4e0e mysql-python \u517c\u5bb9\u7684\u7eaf Python MySQL \u9a71\u52a8\u7a0b\u5e8f\u3002<\/li>\n<\/ul>\n<\/li>\n<li>PostgreSQL-\u00a0<a href=\"https:\/\/github.com\/dhamaniasad\/awesome-postgres\" rel=\"nofollow noopener noreferrer\">\u5f88\u68d2\u7684<\/a>\u00a0Postgres\n<ul>\n<li><a href=\"http:\/\/initd.org\/psycopg\/\" rel=\"nofollow noopener noreferrer\">psycopg2-<\/a>\u00a0\u6700\u53d7\u6b22\u8fce\u7684 Python PostgreSQL \u9002\u914d\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/gmr\/queries\" rel=\"nofollow noopener noreferrer\">\u67e5\u8be2<\/a>\u00a0-psycopg2 \u5e93\u7684\u5305\u88c5\uff0c\u7528\u4e8e\u4e0e PostgreSQL \u4ea4\u4e92\u3002<\/li>\n<\/ul>\n<\/li>\n<li>SQlite-\u00a0<a href=\"https:\/\/github.com\/planetopendata\/awesome-sqlite\" rel=\"nofollow noopener noreferrer\">\u5f88\u68d2\u7684 SQLite<\/a>\n<ul>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/sqlite3.html\" rel=\"nofollow noopener noreferrer\">sqlite3-<\/a>\uff08Python \u6807\u51c6\u5e93\uff09\u4e0e DB-API 2.0 \u517c\u5bb9\u7684 SQlite \u63a5\u53e3<\/li>\n<li><a href=\"https:\/\/github.com\/plasticityai\/supersqlite\" rel=\"nofollow noopener noreferrer\">SuperSQLite-<\/a>\u00a0\u5efa\u7acb\u5728\u00a0<a href=\"https:\/\/github.com\/rogerbinns\/apsw\" rel=\"nofollow noopener noreferrer\">apsw<\/a>\u00a0\u4e4b\u4e0a\u7684\u589e\u538b SQLite \u5e93\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u5176\u4ed6\u5173\u7cfb\u6570\u636e\u5e93\n<ul>\n<li><a href=\"https:\/\/pymssql.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">pymssql<\/a>\u00a0-Microsoft SQL Server \u7684\u7b80\u5355\u6570\u636e\u5e93\u63a5\u53e3\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/mymarilyn\/clickhouse-driver\" rel=\"nofollow noopener noreferrer\">clickhouse-driver-<\/a>\u00a0\u5177\u6709 ClickHouse \u672c\u5730\u63a5\u53e3\u7684 Python \u9a71\u52a8\u7a0b\u5e8f\u3002<\/li>\n<\/ul>\n<\/li>\n<li>NoSQL \u6570\u636e\u5e93\n<ul>\n<li><a href=\"https:\/\/github.com\/datastax\/python-driver\" rel=\"nofollow noopener noreferrer\">cassandra-driver<\/a>\u00a0-Apache Cassandra \u7684 Python \u9a71\u52a8\u7a0b\u5e8f\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/wbolster\/happybase\" rel=\"nofollow noopener noreferrer\">happybase<\/a>\u00a0-Apache HBase \u7684\u5f00\u53d1\u4eba\u5458\u53cb\u597d\u578b\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dpkp\/kafka-python\" rel=\"nofollow noopener noreferrer\">kafka-python<\/a>\u00a0-Apache Kafka \u7684 Python \u5ba2\u6237\u7aef\u3002<\/li>\n<li><a href=\"https:\/\/py2neo.org\/\" rel=\"nofollow noopener noreferrer\">py2neo-<\/a>\u00a0\u7528\u4e8e Neo4j \u7684\u5ba2\u6237\u7aef\u5e93\u548c\u5de5\u5177\u5305\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/mongodb\/mongo-python-driver\" rel=\"nofollow noopener noreferrer\">pymongo<\/a>\u00a0-MongoDB \u7684\u5b98\u65b9 Python \u5ba2\u6237\u7aef\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/andymccurdy\/redis-py\" rel=\"nofollow noopener noreferrer\">redis-py<\/a>\u00a0-Redis \u7684 Python \u5ba2\u6237\u7aef\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u5f02\u6b65\u5ba2\u6237\u7aef\n<ul>\n<li><a href=\"https:\/\/github.com\/mongodb\/motor\" rel=\"nofollow noopener noreferrer\">motor<\/a>\u00a0-MongoDB \u7684\u5f02\u6b65 Python \u9a71\u52a8\u7a0b\u5e8f\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"43b585\"><a class=\"reference-link\" name=\"\u5341\u4e5d\u3001  DevOps\u5de5\u5177\"><\/a>\u5341\u4e5d\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#DevOps%E5%B7%A5%E5%85%B7\">DevOps \u5de5\u5177<\/a><\/h1>\n<p><em>DevOps \u7684\u8f6f\u4ef6\u548c\u5e93\u3002<\/em><\/p>\n<ul>\n<li>\u914d\u7f6e\u7ba1\u7406\n<ul>\n<li><a href=\"https:\/\/github.com\/ansible\/ansible\" rel=\"nofollow noopener noreferrer\">ansible-<\/a>\u00a0\u4e00\u4e2a\u975e\u5e38\u7b80\u5355\u7684 IT \u81ea\u52a8\u5316\u5e73\u53f0\u3002<\/li>\n<li><a href=\"https:\/\/cloudinit.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">cloudinit-<\/a>\u00a0\u4e00\u4e2a<a href=\"https:\/\/cloudinit.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">\u591a\u5206\u53d1\u5305<\/a>\uff0c\u7528\u4e8e\u5904\u7406\u4e91\u5b9e\u4f8b\u7684\u65e9\u671f\u521d\u59cb\u5316\u3002<\/li>\n<li><a href=\"https:\/\/www.openstack.org\/\" rel=\"nofollow noopener noreferrer\">OpenStack-<\/a>\u00a0\u7528\u4e8e\u6784\u5efa\u79c1\u6709\u548c\u516c\u5171\u4e91\u7684\u5f00\u6e90\u8f6f\u4ef6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/Fizzadar\/pyinfra\" rel=\"nofollow noopener noreferrer\">pyinfra-<\/a>\u00a0\u901a\u7528\u7684 CLI \u5de5\u5177\u548c python \u5e93\uff0c\u53ef\u81ea\u52a8\u6267\u884c\u57fa\u7840\u67b6\u6784\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/saltstack\/salt\" rel=\"nofollow noopener noreferrer\">saltstack-<\/a>\u00a0\u57fa\u7840\u7ed3\u6784\u81ea\u52a8\u5316\u548c\u7ba1\u7406\u7cfb\u7edf\u3002<\/li>\n<\/ul>\n<\/li>\n<li>SSH \u6837\u5f0f\u7684\u90e8\u7f72\n<ul>\n<li><a href=\"https:\/\/github.com\/sebastien\/cuisine\" rel=\"nofollow noopener noreferrer\">cuisine<\/a>\u00a0&#8211; \u7c7b\u4f3c\u4e8e Fabric \u7684\u53a8\u5e08\u529f\u80fd\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/fabric\/fabric\" rel=\"nofollow noopener noreferrer\">fabric<\/a>\u00a0&#8211; \u4e00\u4e2a\u7b80\u5355\u7684\uff0cPython \u5316\u5de5\u5177\uff0c\u7528\u4e8e\u8fdc\u7a0b\u6267\u884c\u548c\u90e8\u7f72\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/fabtools\/fabtools\" rel=\"nofollow noopener noreferrer\">fabtools-<\/a>\u00a0\u7f16\u5199\u5f88\u68d2\u7684 Fabric \u6587\u4ef6\u7684\u5de5\u5177\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u6d41\u7a0b\u7ba1\u7406\n<ul>\n<li><a href=\"https:\/\/github.com\/nickstenning\/honcho\" rel=\"nofollow noopener noreferrer\">honcho<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/github.com\/ddollar\/foreman\" rel=\"nofollow noopener noreferrer\">Foreman<\/a>\u00a0\u7684 Python \u514b\u9686\uff0c\u7528\u4e8e\u7ba1\u7406\u57fa\u4e8e Procfile \u7684\u5e94\u7528\u7a0b\u5e8f\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/Supervisor\/supervisor\" rel=\"nofollow noopener noreferrer\">supervisor<\/a>\u00a0&#8211; \u7528\u4e8e UNIX \u76d1\u4e8b\u8fc7\u7a0b\u63a7\u5236\u7cfb\u7edf\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u76d1\u63a7\u65b9\u5f0f\n<ul>\n<li><a href=\"https:\/\/github.com\/giampaolo\/psutil\" rel=\"nofollow noopener noreferrer\">psutil-<\/a>\u00a0\u8de8\u5e73\u53f0\u7684\u6d41\u7a0b\u548c\u7cfb\u7edf\u5b9e\u7528\u7a0b\u5e8f\u6a21\u5757\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u540e\u5907\n<ul>\n<li><a href=\"https:\/\/www.borgbackup.org\/\" rel=\"nofollow noopener noreferrer\">BorgBackup-<\/a>\u00a0\u5177\u6709\u538b\u7f29\u548c\u52a0\u5bc6\u529f\u80fd\u7684\u91cd\u590d\u6570\u636e\u5220\u9664\u5b58\u6863\u5668\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u5176\u4ed6\n<ul>\n<li><a href=\"https:\/\/docs.docker.com\/compose\/\" rel=\"nofollow noopener noreferrer\">docker-\u00a0<\/a><a href=\"https:\/\/www.docker.com\/\" rel=\"nofollow noopener noreferrer\">compose-<\/a>\u00a0\u4f7f\u7528\u00a0<a href=\"https:\/\/www.docker.com\/\" rel=\"nofollow noopener noreferrer\">Docker \u7684<\/a>\u5feb\u901f\u9694\u79bb\u5f00\u53d1\u73af\u5883\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"310742\"><a class=\"reference-link\" name=\"\u4e8c\u5341\u3001  \u5206\u5e03\u5f0f\u8ba1\u7b97\"><\/a>\u4e8c\u5341\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E5%88%86%E5%B8%83%E5%BC%8F%E8%AE%A1%E7%AE%97\">\u5206\u5e03\u5f0f\u8ba1\u7b97<\/a><\/h1>\n<h2 id=\"838306\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u5206\u5e03\u5f0f\u8ba1\u7b97\u7684\u6846\u67b6\u548c\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u5206\u5e03\u5f0f\u8ba1\u7b97\u7684\u6846\u67b6\u548c\u5e93\u3002<\/em><\/h2>\n<ul>\n<li>\u6279\u91cf\u5904\u7406\n<ul>\n<li><a href=\"https:\/\/github.com\/dask\/dask\" rel=\"nofollow noopener noreferrer\">dask-<\/a>\u00a0\u7528\u4e8e\u5206\u6790\u8ba1\u7b97\u7684\u7075\u6d3b\u5e76\u884c\u8ba1\u7b97\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/spotify\/luigi\" rel=\"nofollow noopener noreferrer\">luigi-<\/a>\u00a0\u4e00\u4e2a\u6a21\u5757\uff0c\u53ef\u5e2e\u52a9\u60a8\u6784\u5efa\u6279\u5904\u7406\u4f5c\u4e1a\u7684\u590d\u6742\u7ba1\u9053\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/Yelp\/mrjob\" rel=\"nofollow noopener noreferrer\">mrjob-<\/a>\u00a0\u5728 Hadoop \u6216 Amazon Web Services \u4e0a\u8fd0\u884c MapReduce \u4f5c\u4e1a\u3002<\/li>\n<li><a href=\"https:\/\/pypi.org\/project\/pyspark\/\" rel=\"nofollow noopener noreferrer\">PySpark<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/spark.apache.org\/\" rel=\"nofollow noopener noreferrer\">Apache Spark<\/a>\u00a0Python API\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/ray-project\/ray\/\" rel=\"nofollow noopener noreferrer\">Ray-<\/a>\u00a0\u7528\u4e8e\u5e76\u884c\u548c\u5206\u5e03\u5f0f Python \u7684\u7cfb\u7edf\uff0c\u7edf\u4e00\u4e86\u673a\u5668\u5b66\u4e60\u751f\u6001\u7cfb\u7edf\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u6d41\u5904\u7406\n<ul>\n<li><a href=\"https:\/\/github.com\/robinhood\/faust\" rel=\"nofollow noopener noreferrer\">faust-<\/a>\u00a0\u6d41\u5904\u7406\u5e93\uff0c\u5c06\u60f3\u6cd5\u4ece\u00a0<a href=\"https:\/\/kafka.apache.org\/documentation\/streams\/\" rel=\"nofollow noopener noreferrer\">Kafka Streams<\/a>\u00a0\u79fb\u690d\u5230 Python\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/Parsely\/streamparse\" rel=\"nofollow noopener noreferrer\">streamparse-<\/a>\u00a0\u901a\u8fc7\u00a0<a href=\"http:\/\/storm.apache.org\/\" rel=\"nofollow noopener noreferrer\">Apache Storm<\/a>\u00a0\u9488\u5bf9\u5b9e\u65f6\u6570\u636e\u6d41\u8fd0\u884c Python \u4ee3\u7801\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"9992a7\"><a class=\"reference-link\" name=\"\u4e8c\u5341\u4e00\u3001  \u914d\u7f6e\u3001\u6253\u5305\u6784\u5efa\"><\/a>\u4e8c\u5341\u4e00\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E9%85%8D%E7%BD%AE%E3%80%81%E6%89%93%E5%8C%85%E6%9E%84%E5%BB%BA\">\u914d\u7f6e\u3001\u6253\u5305\u6784\u5efa<\/a><\/h1>\n<h2 id=\"1cb348\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u5b58\u50a8\u548c\u89e3\u6790\u914d\u7f6e\u9009\u9879\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u5b58\u50a8\u548c\u89e3\u6790\u914d\u7f6e\u9009\u9879\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/DiffSK\/configobj\" rel=\"nofollow noopener noreferrer\">configobj-<\/a>\u00a0\u5e26\u6709\u9a8c\u8bc1\u7684 INI \u6587\u4ef6\u89e3\u6790\u5668\u3002<\/li>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/configparser.html\" rel=\"nofollow noopener noreferrer\">configparser-<\/a>\uff08Python \u6807\u51c6\u5e93\uff09INI \u6587\u4ef6\u89e3\u6790\u5668\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/facebookresearch\/hydra\" rel=\"nofollow noopener noreferrer\">hydra<\/a>\u00a0-Hydra \u662f\u7528\u4e8e\u4f18\u96c5\u914d\u7f6e\u590d\u6742\u5e94\u7528\u7a0b\u5e8f\u7684\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/profig.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">profig-<\/a>\u00a0\u4f7f\u7528\u503c\u8f6c\u6362\u4ece\u591a\u79cd\u683c\u5f0f\u8fdb\u884c\u914d\u7f6e\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/henriquebastos\/python-decouple\" rel=\"nofollow noopener noreferrer\">python-decouple-<\/a>\u00a0\u4e25\u683c\u5c06\u8bbe\u7f6e\u4e0e\u4ee3\u7801\u5206\u5f00\u3002<\/li>\n<\/ul>\n<h2 id=\"90e82d\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u521b\u5efa\u6253\u5305\u7684\u53ef\u6267\u884c\u6587\u4ef6\u4ee5\u8fdb\u884c\u53d1\u884c\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u521b\u5efa\u6253\u5305\u7684\u53ef\u6267\u884c\u6587\u4ef6\u4ee5\u8fdb\u884c\u53d1\u884c\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/spotify\/dh-virtualenv\" rel=\"nofollow noopener noreferrer\">dh-virtualenv-<\/a>\u00a0\u4ee5 Debian \u8f6f\u4ef6\u5305\u7684\u5f62\u5f0f\u6784\u5efa\u548c\u5206\u53d1 virtualenv\u3002<\/li>\n<li><a href=\"http:\/\/nuitka.net\/\" rel=\"nofollow noopener noreferrer\">Nuitka &#8211; \u5c06<\/a>\u811a\u672c\uff0c\u6a21\u5757\uff0c\u7a0b\u5e8f\u5305\u7f16\u8bd1\u4e3a\u53ef\u6267\u884c\u6587\u4ef6\u6216\u6269\u5c55\u6a21\u5757\u3002<\/li>\n<li><a href=\"http:\/\/pythonhosted.org\/py2app\/\" rel=\"nofollow noopener noreferrer\">py2app-<\/a>\u00a0\u51bb\u7ed3 Python \u811a\u672c\uff08Mac OS X\uff09\u3002<\/li>\n<li><a href=\"http:\/\/www.py2exe.org\/\" rel=\"nofollow noopener noreferrer\">py2exe-<\/a>\u00a0\u51bb\u7ed3 Python \u811a\u672c\uff08Windows\uff09\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dashingsoft\/pyarmor\" rel=\"nofollow noopener noreferrer\">pyarmor-<\/a>\u00a0\u4e00\u79cd\u7528\u4e8e\u6df7\u6dc6 python \u811a\u672c\uff0c\u5c06\u6df7\u6dc6\u540e\u7684\u811a\u672c\u7ed1\u5b9a\u5230\u56fa\u5b9a\u8ba1\u7b97\u673a\u6216\u4f7f\u6df7\u6dc6\u540e\u7684\u811a\u672c\u5931\u6548\u7684\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pyinstaller\/pyinstaller\" rel=\"nofollow noopener noreferrer\">PyInstaller-<\/a>\u00a0\u5c06 Python \u7a0b\u5e8f\u8f6c\u6362\u4e3a\u72ec\u7acb\u7684\u53ef\u6267\u884c\u6587\u4ef6\uff08\u8de8\u5e73\u53f0\uff09\u3002<\/li>\n<li><a href=\"http:\/\/pynsist.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">pynsist-<\/a>\u00a0\u7528\u4e8e\u6784\u5efa Windows \u5b89\u88c5\u7a0b\u5e8f\u7684\u5de5\u5177\uff0c\u5b89\u88c5\u7a0b\u5e8f\u5c06 Python \u672c\u8eab\u6346\u7ed1\u5728\u4e00\u8d77\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/linkedin\/shiv\" rel=\"nofollow noopener noreferrer\">shiv-<\/a>\u00a0\u547d\u4ee4\u884c\u5b9e\u7528\u7a0b\u5e8f\uff0c\u7528\u4e8e\u6784\u5efa\u5b8c\u5168\u72ec\u7acb\u7684 zipapp\uff08PEP 441\uff09\uff0c\u4f46\u5305\u62ec\u5176\u6240\u6709\u4f9d\u8d56\u9879\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"e2429c\"><a class=\"reference-link\" name=\"\u4e8c\u5341\u4e8c\u3001  \u865a\u62df\u73af\u5883\"><\/a>\u4e8c\u5341\u4e8c\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E8%99%9A%E6%8B%9F%E7%8E%AF%E5%A2%83\">\u865a\u62df\u73af\u5883<\/a><\/h1>\n<p><em>\u7528\u4e8e Python \u7248\u672c\u548c\u865a\u62df\u73af\u5883\u7ba1\u7406\u7684\u5e93\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/pyenv\/pyenv\" rel=\"nofollow noopener noreferrer\">pyenv-<\/a>\u00a0\u7b80\u5355\u7684 Python \u7248\u672c\u7ba1\u7406\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pypa\/virtualenv\" rel=\"nofollow noopener noreferrer\">virtualenv-<\/a>\u00a0\u521b\u5efa\u9694\u79bb\u7684 Python \u73af\u5883\u7684\u5de5\u5177\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"cc8fca\"><a class=\"reference-link\" name=\"\u4e8c\u5341\u4e09\u3001  \u754c\u9762\u5f00\u53d1\"><\/a>\u4e8c\u5341\u4e09\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E7%95%8C%E9%9D%A2%E5%BC%80%E5%8F%91\">\u754c\u9762\u5f00\u53d1<\/a><\/h1>\n<p><em>\u7528\u4e8e\u5904\u7406\u56fe\u5f62\u7528\u6237\u754c\u9762\u5e94\u7528\u7a0b\u5e8f\u7684\u5e93\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/docs.python.org\/3\/library\/curses.html\" rel=\"nofollow noopener noreferrer\">curses<\/a>\u00a0&#8211; &#8211; \u5185\u7f6e\u5305\u88c5\u5668\u00a0<a href=\"http:\/\/www.gnu.org\/software\/ncurses\/\" rel=\"nofollow noopener noreferrer\">ncurses \u7684<\/a>\u7528\u4e8e\u521b\u5efa\u7ec8\u7aef GUI \u7684\u5e94\u7528\u7a0b\u5e8f\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/ChrisKnott\/Eel\" rel=\"nofollow noopener noreferrer\">Eel-<\/a>\u00a0\u4e00\u4e2a\u7528\u4e8e\u5236\u4f5c\u7b80\u5355\u7684\u7c7b\u4f3c\u4e8e\u7535\u5b50\u7684\u8131\u673a HTML \/ JS GUI \u5e94\u7528\u7a0b\u5e8f\u7684\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/nucleic\/enaml\" rel=\"nofollow noopener noreferrer\">enaml-<\/a>\u00a0\u4f7f\u7528\u58f0\u660e\u6027\u8bed\u6cd5\uff08\u5982 QML\uff09\u521b\u5efa\u6f02\u4eae\u7684\u7528\u6237\u754c\u9762\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/zoofIO\/flexx\" rel=\"nofollow noopener noreferrer\">Flexx<\/a>\u00a0-Flexx \u662f\u7528\u4e8e\u521b\u5efa GUI \u7684\u7eaf Python \u5de5\u5177\u5305\uff0c\u5b83\u4f7f\u7528 Web \u6280\u672f\u8fdb\u884c\u5448\u73b0\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/chriskiehl\/Gooey\" rel=\"nofollow noopener noreferrer\">Gooey &#8211; \u4f7f\u7528<\/a>\u547d\u4ee4\u884c\u5c06\u547d\u4ee4\u884c\u7a0b\u5e8f\u8f6c\u6362\u4e3a\u5b8c\u6574\u7684 GUI \u5e94\u7528\u7a0b\u5e8f\u3002<\/li>\n<li><a href=\"https:\/\/kivy.org\/\" rel=\"nofollow noopener noreferrer\">kivy-<\/a>\u00a0\u7528\u4e8e\u521b\u5efa NUI \u5e94\u7528\u7a0b\u5e8f\u7684\u5e93\uff0c\u53ef\u5728 Windows\uff0cLinux\uff0cMac OS X\uff0cAndroid \u548c iOS \u4e0a\u8fd0\u884c\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pyglet\/pyglet\" rel=\"nofollow noopener noreferrer\">pyglet<\/a>\u00a0-Python \u7684\u8de8\u5e73\u53f0\u7a97\u53e3\u548c\u591a\u5a92\u4f53\u5e93\u3002<\/li>\n<li><a href=\"https:\/\/wiki.gnome.org\/Projects\/PyGObject\" rel=\"nofollow noopener noreferrer\">PyGObject<\/a>\u00a0-GLib \/ GObject \/ GIO \/ GTK +\uff08GTK + 3\uff09\u7684 Python \u7ed1\u5b9a\u3002<\/li>\n<li><a href=\"https:\/\/riverbankcomputing.com\/software\/pyqt\/intro\" rel=\"nofollow noopener noreferrer\">PyQt<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/www.qt.io\/\" rel=\"nofollow noopener noreferrer\">Qt<\/a>\u00a0\u8de8\u5e73\u53f0\u5e94\u7528\u7a0b\u5e8f\u548c UI \u6846\u67b6\u7684 Python \u7ed1\u5b9a\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/PySimpleGUI\/PySimpleGUI\" rel=\"nofollow noopener noreferrer\">PySimpleGUI<\/a>\u00a0&#8211;\u00a0<a href=\"https:\/\/github.com\/PySimpleGUI\/PySimpleGUI\" rel=\"nofollow noopener noreferrer\">tkinter<\/a>\uff0cQt\uff0cWxPython \u548c Remi \u7684\u5305\u88c5\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/r0x0r\/pywebview\/\" rel=\"nofollow noopener noreferrer\">pywebview-<\/a>\u00a0\u56f4\u7ed5 webview \u7ec4\u4ef6\u7684\u8f7b\u91cf\u7ea7\u8de8\u5e73\u53f0\u672c\u673a\u5305\u88c5\u5668\u3002<\/li>\n<li><a href=\"https:\/\/wiki.python.org\/moin\/TkInter\" rel=\"nofollow noopener noreferrer\">Tkinter<\/a>\u00a0-Tkinter \u662f Python \u7684\u4e8b\u5b9e\u4e0a\u7684\u6807\u51c6 GUI \u8f6f\u4ef6\u5305\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pybee\/toga\" rel=\"nofollow noopener noreferrer\">Toga<\/a>\u00a0-Python \u672c\u673a\uff0cOS \u672c\u673a GUI \u5de5\u5177\u7bb1\u3002<\/li>\n<li><a href=\"http:\/\/urwid.org\/\" rel=\"nofollow noopener noreferrer\">urwid-<\/a>\u00a0\u4e00\u4e2a\u7528\u4e8e\u521b\u5efa\u7ec8\u7aef GUI \u5e94\u7528\u7a0b\u5e8f\u7684\u5e93\uff0c\u8be5\u5e93\u5bf9\u5c0f\u90e8\u4ef6\uff0c\u4e8b\u4ef6\uff0c\u4e30\u5bcc\u7684\u989c\u8272\u7b49\u5177\u6709\u5f3a\u5927\u7684\u652f\u6301\u3002<\/li>\n<li><a href=\"https:\/\/wxpython.org\/\" rel=\"nofollow noopener noreferrer\">wxPython<\/a>\u00a0-wxWidgets C ++ \u7c7b\u5e93\u4e0e Python \u7684\u6df7\u5408\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/RaylockLLC\/DearPyGui\/\" rel=\"nofollow noopener noreferrer\">DearPyGui-<\/a>\u00a0\u4e00\u4e2a\u7b80\u5355\u7684 GPU \u52a0\u901f\u7684 Python GUI \u6846\u67b6<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"58e6b0\"><a class=\"reference-link\" name=\"\u4e8c\u5341\u56db\u3001  \u6e38\u620f\u5f00\u53d1\"><\/a>\u4e8c\u5341\u56db\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E6%B8%B8%E6%88%8F%E5%BC%80%E5%8F%91\">\u6e38\u620f\u5f00\u53d1<\/a><\/h1>\n<p><em>\u5f88\u68d2\u7684\u6e38\u620f\u5f00\u53d1\u5e93\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/arcade.academy\/index.html\" rel=\"nofollow noopener noreferrer\">Arcade<\/a>\u00a0-Arcade \u662f\u4e00\u4e2a\u73b0\u4ee3 Python \u6846\u67b6\uff0c\u7528\u4e8e\u5236\u4f5c\u5177\u6709\u5f15\u4eba\u6ce8\u76ee\u7684\u56fe\u5f62\u548c\u58f0\u97f3\u7684\u6e38\u620f\u3002<\/li>\n<li><a href=\"http:\/\/cocos2d.org\/\" rel=\"nofollow noopener noreferrer\">Cocos2d<\/a>\u00a0-cocos2d \u662f\u7528\u4e8e\u6784\u5efa 2D \u6e38\u620f\uff0c\u6f14\u793a\u548c\u5176\u4ed6\u56fe\u5f62 \/ \u4ea4\u4e92\u5e94\u7528\u7a0b\u5e8f\u7684\u6846\u67b6\u3002<\/li>\n<li><a href=\"http:\/\/www.harfang3d.com\/\" rel=\"nofollow noopener noreferrer\">Harfang3D-<\/a>\u00a0\u7528\u4e8e 3D\uff0cVR \u548c\u6e38\u620f\u5f00\u53d1\u7684 Python \u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/www.panda3d.org\/\" rel=\"nofollow noopener noreferrer\">Panda3D-<\/a>\u00a0\u8fea\u58eb\u5c3c\u5f00\u53d1\u7684 3D \u6e38\u620f\u5f15\u64ce\u3002<\/li>\n<li><a href=\"http:\/\/www.pygame.org\/news.html\" rel=\"nofollow noopener noreferrer\">Pygame<\/a>\u00a0-Pygame \u662f\u4e00\u7ec4\u65e8\u5728\u7f16\u5199\u6e38\u620f\u7684 Python \u6a21\u5757\u3002<\/li>\n<li><a href=\"http:\/\/www.ogre3d.org\/tikiwiki\/PyOgre\" rel=\"nofollow noopener noreferrer\">PyOgre<\/a>\u00a0-Ogre 3D \u6e32\u67d3\u5f15\u64ce\u7684 Python \u7ed1\u5b9a\uff0c\u53ef\u7528\u4e8e\u6e38\u620f\uff0c\u6a21\u62df\u6216\u4efb\u4f55 3D\u3002<\/li>\n<li><a href=\"http:\/\/pyopengl.sourceforge.net\/\" rel=\"nofollow noopener noreferrer\">PyOpenGL<\/a>\u00a0-OpenGL \u53ca\u5176\u76f8\u5173 API \u7684 Python ctypes \u7ed1\u5b9a\u3002<\/li>\n<li><a href=\"https:\/\/pysdl2.readthedocs.io\/\" rel=\"nofollow noopener noreferrer\">PySDL2<\/a>\u00a0-SDL2 \u5e93\u7684\u57fa\u4e8e ctypes \u7684\u5305\u88c5\u5668\u3002<\/li>\n<li><a href=\"https:\/\/www.renpy.org\/\" rel=\"nofollow noopener noreferrer\">RenPy-<\/a>\u00a0\u4e00\u4e2a\u89c6\u89c9\u5c0f\u8bf4\u5f15\u64ce<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"358fb8\"><a class=\"reference-link\" name=\"\u4e8c\u5341\u4e94\u3001  \u4efb\u52a1\u8c03\u5ea6\u5668\"><\/a>\u4e8c\u5341\u4e94\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6%E5%99%A8\">\u4efb\u52a1\u8c03\u5ea6\u5668<\/a><\/h1>\n<h2 id=\"b75262\"><a class=\"reference-link\" style=\"box-sizing: border-box; background: transparent; color: #18a1f6; text-decoration: none; position: relative;\" name=\"&lt;em&gt;\u7528\u4e8e\u8ba1\u5212\u4f5c\u4e1a\u7684\u5e93\u3002&lt;\/em&gt;\"><\/a><em>\u7528\u4e8e\u8ba1\u5212\u4f5c\u4e1a\u7684\u5e93\u3002<\/em><\/h2>\n<ul>\n<li><a href=\"https:\/\/airflow.apache.org\/\" rel=\"nofollow noopener noreferrer\">Airflow<\/a>\u00a0\u6c14\u6d41\u662f\u4e00\u4e2a\u4ee5\u7f16\u7a0b\u65b9\u5f0f\u7f16\u5199\uff0c\u5b89\u6392\u548c\u76d1\u89c6\u5de5\u4f5c\u6d41\u7684\u5e73\u53f0\u3002<\/li>\n<li><a href=\"http:\/\/apscheduler.readthedocs.io\/en\/latest\/\" rel=\"nofollow noopener noreferrer\">APScheduler-<\/a>\u00a0\u8f7b\u5de7\u4f46\u529f\u80fd\u5f3a\u5927\u7684\u8fdb\u7a0b\u5185\u4efb\u52a1\u8ba1\u5212\u7a0b\u5e8f\uff0c\u53ef\u8ba9\u60a8\u8ba1\u5212\u529f\u80fd\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/thauber\/django-schedule\" rel=\"nofollow noopener noreferrer\">django-schedule<\/a>\u00a0-Django \u7684\u65e5\u5386\u5e94\u7528\u7a0b\u5e8f\u3002<\/li>\n<li><a href=\"http:\/\/pydoit.org\/\" rel=\"nofollow noopener noreferrer\">doit-<\/a>\u00a0\u4e00\u4e2a\u4efb\u52a1\u8fd0\u884c\u5668\u548c\u6784\u5efa\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/gunnery\/gunnery\" rel=\"nofollow noopener noreferrer\">gunnery<\/a>\u00a0&#8211; \u5177\u6709\u57fa\u4e8e Web \u754c\u9762\u7684\u5206\u5e03\u5f0f\u7cfb\u7edf\u7684\u591a\u7528\u9014\u4efb\u52a1\u6267\u884c\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/joblib.readthedocs.io\/\" rel=\"nofollow noopener noreferrer\">Joblib-<\/a>\u00a0\u4e00\u5957\u5728 Python \u4e2d\u63d0\u4f9b\u8f7b\u91cf\u7ea7\u6d41\u6c34\u7ebf\u7684\u5de5\u5177\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/fengsp\/plan\" rel=\"nofollow noopener noreferrer\">Plan<\/a>\u00a0&#8211; \u50cf\u7528\u540a\u9970\u4e00\u6837\u7528 Python \u7f16\u5199 crontab \u6587\u4ef6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/PrefectHQ\/prefect\" rel=\"nofollow noopener noreferrer\">Prefect-<\/a>\u00a0\u4e00\u4e2a\u73b0\u4ee3\u7684\u5de5\u4f5c\u6d41\u7a0b\u7f16\u6392\u6846\u67b6\uff0c\u53ef\u8f7b\u677e\u6784\u5efa\uff0c\u8c03\u5ea6\u548c\u76d1\u89c6\u5f3a\u5927\u7684\u6570\u636e\u7ba1\u9053\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/dbader\/schedule\" rel=\"nofollow noopener noreferrer\">schedule-<\/a>\u00a0\u9488\u5bf9\u4eba\u7c7b\u7684 Python \u4f5c\u4e1a\u8c03\u5ea6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/knipknap\/SpiffWorkflow\" rel=\"nofollow noopener noreferrer\">Spiff-<\/a>\u00a0\u7528\u7eaf Python \u5b9e\u73b0\u7684\u529f\u80fd\u5f3a\u5927\u7684\u5de5\u4f5c\u6d41\u5f15\u64ce\u3002<\/li>\n<li><a href=\"https:\/\/docs.openstack.org\/developer\/taskflow\/\" rel=\"nofollow noopener noreferrer\">TaskFlow-<\/a>\u00a0\u4e00\u4e2a Python \u5e93\uff0c\u53ef\u5e2e\u52a9<a href=\"https:\/\/docs.openstack.org\/developer\/taskflow\/\" rel=\"nofollow noopener noreferrer\">\u7b80\u5316<\/a>\uff0c\u4e00\u81f4\u4e14\u53ef\u9760\u7684\u4efb\u52a1\u6267\u884c<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"106392\"><a class=\"reference-link\" name=\"\u4e8c\u5341\u516d\u3001  \u79d1\u5b66\u8ba1\u7b97\"><\/a>\u4e8c\u5341\u516d\u3001<a href=\"https:\/\/learnku.com\/articles\/55696#%E7%A7%91%E5%AD%A6%E8%AE%A1%E7%AE%97\">\u79d1\u5b66\u8ba1\u7b97<\/a><\/h1>\n<p><em>\u7528\u4e8e\u79d1\u5b66\u8ba1\u7b97\u7684\u56fe\u4e66\u9986\u3002\u53e6\u8bf7\u53c2\u89c1\u00a0<a href=\"https:\/\/github.com\/TomNicholas\/Python-for-Scientists\" rel=\"nofollow noopener noreferrer\">Python for-Scientists<\/a>\u3002<\/em><\/p>\n<ul>\n<li><a href=\"http:\/\/www.astropy.org\/\" rel=\"nofollow noopener noreferrer\">astropy-<\/a>\u00a0\u5929\u6587\u5b66\u7684\u793e\u533a Python \u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/chapmanb\/bcbio-nextgen\" rel=\"nofollow noopener noreferrer\">bcbio-nextgen-<\/a>\u00a0\u63d0\u4f9b\u6700\u4f73\u5b9e\u8df5\u6d41\u6c34\u7ebf\uff0c\u7528\u4e8e\u5168\u81ea\u52a8\u9ad8\u901a\u91cf\u6d4b\u5e8f\u5206\u6790\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/chapmanb\/bcbb\" rel=\"nofollow noopener noreferrer\">bccb-<\/a>\u00a0\u6536\u96c6\u4e0e\u751f\u7269\u5b66\u5206\u6790\u6709\u5173\u7684\u6709\u7528\u4ee3\u7801\u3002<\/li>\n<li><a href=\"http:\/\/biopython.org\/wiki\/Main_Page\" rel=\"nofollow noopener noreferrer\">Biopython<\/a>\u00a0-Biopython \u662f\u4e00\u5957\u514d\u8d39\u7684\u751f\u7269\u8ba1\u7b97\u5de5\u5177\u3002<\/li>\n<li><a href=\"http:\/\/cclib.github.io\/\" rel=\"nofollow noopener noreferrer\">cclib-<\/a>\u00a0\u4e00\u4e2a\u7528\u4e8e\u89e3\u6790\u548c\u89e3\u91ca\u8ba1\u7b97\u5316\u5b66\u7a0b\u5e8f\u5305\u7ed3\u679c\u7684\u5e93\u3002<\/li>\n<li><a href=\"http:\/\/colour-science.org\/\" rel=\"nofollow noopener noreferrer\">Colour<\/a>\u00a0&#8211; \u5b9e\u65bd\u5927\u91cf\u7684\u989c\u8272\u7406\u8bba\u8f6c\u6362\u548c\u7b97\u6cd5\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/benedekrozemberczki\/karateclub\" rel=\"nofollow noopener noreferrer\">Karate Club<\/a>\u00a0&#8211; \u7528\u4e8e\u56fe\u5f62\u7ed3\u6784\u5316\u6570\u636e\u7684\u65e0\u76d1\u7763\u673a\u5668\u5b66\u4e60\u5de5\u5177\u7bb1\u3002<\/li>\n<li><a href=\"https:\/\/networkx.github.io\/\" rel=\"nofollow noopener noreferrer\">NetworkX-<\/a>\u00a0\u7528\u4e8e\u590d\u6742\u7f51\u7edc\u7684\u9ad8\u751f\u4ea7\u7387\u8f6f\u4ef6\u3002<\/li>\n<li><a href=\"http:\/\/nipy.org\/\" rel=\"nofollow noopener noreferrer\">NIPY-<\/a>\u00a0\u795e\u7ecf\u5f71\u50cf\u5de5\u5177\u7bb1\u7684\u96c6\u5408\u3002<\/li>\n<li><a href=\"http:\/\/www.numpy.org\/\" rel=\"nofollow noopener noreferrer\">NumPy-<\/a>\u00a0\u4f7f\u7528 Python \u8fdb\u884c\u79d1\u5b66\u8ba1\u7b97\u7684\u57fa\u672c\u8f6f\u4ef6\u5305\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/obspy\/obspy\/wiki\/\" rel=\"nofollow noopener noreferrer\">ObsPy-<\/a>\u00a0\u5730\u9707\u5b66\u7684 Python \u5de5\u5177\u7bb1\u3002<\/li>\n<li><a href=\"http:\/\/openbabel.org\/wiki\/Main_Page\" rel=\"nofollow noopener noreferrer\">Open Babel-<\/a>\u00a0\u4e00\u79cd\u5316\u5b66\u5de5\u5177\u7bb1\uff0c\u65e8\u5728\u8bb2\u591a\u79cd\u5316\u5b66\u6570\u636e\u8bed\u8a00\u3002<\/li>\n<li><a href=\"http:\/\/www.pydy.org\/\" rel=\"nofollow noopener noreferrer\">PyDy<\/a>\u00a0-Python Dynamics \u7684<a href=\"http:\/\/www.pydy.org\/\" rel=\"nofollow noopener noreferrer\">\u7f29\u5199<\/a>\uff0c\u7528\u4e8e\u534f\u52a9\u5de5\u4f5c\u6d41\u8fdb\u884c\u52a8\u6001\u8fd0\u52a8\u5efa\u6a21\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/pymc-devs\/pymc3\" rel=\"nofollow noopener noreferrer\">PyMC-<\/a>\u00a0\u9a6c\u5c14\u53ef\u592b\u94fe\u8499\u7279\u5361\u6d1b\u91c7\u6837\u5de5\u5177\u5305\u3002<\/li>\n<li><a href=\"http:\/\/qutip.org\/\" rel=\"nofollow noopener noreferrer\">QuTiP<\/a>\u00a0-Python \u4e2d\u7684 Quantum Toolbox\u3002<\/li>\n<li><a href=\"http:\/\/www.rdkit.org\/\" rel=\"nofollow noopener noreferrer\">RDKit-<\/a>\u00a0\u5316\u5b66\u4fe1\u606f\u5b66\u548c\u673a\u5668\u5b66\u4e60\u8f6f\u4ef6\u3002<\/li>\n<li><a href=\"https:\/\/www.scipy.org\/\" rel=\"nofollow noopener noreferrer\">SciPy-<\/a>\u00a0\u7528\u4e8e\u6570\u5b66\uff0c\u79d1\u5b66\u548c\u5de5\u7a0b\u7684\u57fa\u4e8e Python \u7684\u5f00\u6e90\u8f6f\u4ef6\u751f\u6001\u7cfb\u7edf\u3002<\/li>\n<li><a href=\"https:\/\/gitlab.com\/team-simpy\/simpy\" rel=\"nofollow noopener noreferrer\">SimPy-<\/a>\u00a0\u4e00\u4e2a\u57fa\u4e8e\u8fc7\u7a0b\u7684\u79bb\u6563\u4e8b\u4ef6\u6a21\u62df\u6846\u67b6\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/statsmodels\/statsmodels\" rel=\"nofollow noopener noreferrer\">statsmodels<\/a>\u00a0-Python \u4e2d\u7684\u7edf\u8ba1\u5efa\u6a21\u548c\u8ba1\u91cf\u7ecf\u6d4e\u5b66\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/sympy\/sympy\" rel=\"nofollow noopener noreferrer\">SymPy-<\/a>\u00a0\u4e00\u4e2a\u7528\u4e8e\u7b26\u53f7\u6570\u5b66\u7684 Python \u5e93\u3002<\/li>\n<li><a href=\"https:\/\/github.com\/quantopian\/zipline\" rel=\"nofollow noopener noreferrer\">Zipline-<\/a>\u00a0\u4e00\u4e2a Pythonic \u7b97\u6cd5\u4ea4\u6613\u5e93\u3002<\/li>\n<\/ul>\n<hr \/>\n<h1 id=\"6defe4\"><a class=\"reference-link\" name=\"RPC\"><\/a><a href=\"https:\/\/learnku.com\/articles\/55696#RPC\">RPC<\/a><\/h1>\n<p><em>RPC \u517c\u5bb9\u670d\u52a1\u5668\u3002<\/em><\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/tomerfiliba\/rpyc\" rel=\"nofollow noopener noreferrer\">RPyC<\/a>\uff08\u8fdc\u7a0b Python \u8c03\u7528\uff09- \u7528\u4e8e Python \u7684\u900f\u660e\u4e14\u5bf9\u79f0\u7684 RPC \u5e93<\/li>\n<li><a href=\"https:\/\/github.com\/0rpc\/zerorpc-python\" rel=\"nofollow noopener noreferrer\">zeroRPC<\/a>\u00a0-zerorpc \u662f\u57fa\u4e8e\u00a0<a href=\"http:\/\/zeromq.org\/\" rel=\"nofollow noopener noreferrer\">ZeroMQ<\/a>\u00a0\u548c\u00a0<a href=\"http:\/\/msgpack.org\/\" rel=\"nofollow noopener noreferrer\">MessagePack<\/a>\u00a0\u7684\u7075\u6d3b RPC \u5b9e\u73b0\u3002<\/li>\n<\/ul>\n<hr \/>\n","protected":false},"excerpt":{"rendered":"<p>\u4e00\u3001\u7b97\u6cd5\u8bbe\u8ba1 Python \u7684\u6570\u636e\u7ed3\u6784\uff0c\u7b97\u6cd5\u548c\u8bbe\u8ba1\u6a21\u5f0f\u7684\u5b9e\u73b0\u3002\u53e6\u8bf7\u53c2\u9605\u771f\u68d2\u7b97\u6cd5\u3002 \u6f14\u7b97\u6cd5 algorithms [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[94],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.iotot.com\/index.php?rest_route=\/wp\/v2\/posts\/1243"}],"collection":[{"href":"https:\/\/blog.iotot.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.iotot.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.iotot.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.iotot.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1243"}],"version-history":[{"count":1,"href":"https:\/\/blog.iotot.com\/index.php?rest_route=\/wp\/v2\/posts\/1243\/revisions"}],"predecessor-version":[{"id":1244,"href":"https:\/\/blog.iotot.com\/index.php?rest_route=\/wp\/v2\/posts\/1243\/revisions\/1244"}],"wp:attachment":[{"href":"https:\/\/blog.iotot.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1243"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.iotot.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1243"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.iotot.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1243"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}