回复内容:
Python标准库虽多,但不是个个用起来都很爽。只给一条建议的话就是:如果Python标准库中明明已经提供一类操作集合的模块了,而网络上还有一些人推荐第三方库,别想了,用后者吧。比如(Requests: HTTP for Humans)之于urllib,比如(Arrow: better dates and times for Python)之于datetime。这两个库的好用之处就不作介绍了,想借此机会对Python标准库吐槽几句:
在Python2下,最初有个urllib标准库用来处理从网络上抓取一些数据的工作,但是这个库太不好用了,例如一次HTTP协议的请求中想自定义请求头,还得引入另一个模块httplib,太不人性化。于是有人对它做了些扩展,打包后叫urllib2,还给加到标准库里去了,但这个urllib2还是有很多地方不是很好用,比如没有连接池这种东西,做爬虫那帮人还得自己鼓捣,于是又有人对它做了扩展,打包后叫urllib3,谢天谢地,这次没加入到标准库,不过要是Python社区对于这种新纳入标准库的模块命名不是这么蛋疼的话,我倒认为urllib3现有的功能需要加入到标准库中,只有一个urllib多好。幸好,虽然前面说得那个好用的(Requests: HTTP for Humans)也是基于urllib3所做的扩展,但终结了数字尾巴的命名噩梦,要是想想urllib4,就觉得一阵反胃。
还是命名上的吐糟,这次举个Python3的例子,在Python3里,urllib和urllib2都被合并到了一起,就叫urllib,根据原先两个模块所提供的方法工作场景分类,被放入urllib.request、urllib.parse、urllib.error这三个子模块中,不过之前提到的urllib3中像是连接池这类有用的,还是没被支持。看上去比Python2中要美好,让我们看看urllib.request模块的名字空间吧:
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">AbstractBasicAuthHandler</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">AbstractDigestAuthHandler</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">AbstractHTTPHandler</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">BaseHandler</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">addclosehook</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">addinfourl</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">build_opener</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">getproxies</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">getproxies_environment</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">getproxies_macosx_sysconf</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">parse_http_list</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">parse_keqv_list</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">pathname2url</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">posixpath</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">to_bytes</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">unquote</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">unquote_to_bytes</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">unwrap</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">url2pathname</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">urlcleanup</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">urljoin</span>
<span class="n">urllib</span><span class="o">.</span><span class="n">request</span><span class="o">.</span><span class="n">urlopen</span>
用以致学。
=====2015-1-21更新=======换了电脑来好好回答一下。刚刚开始学完Python的基础语法之后也有一些迷茫,不知道该继续学些什么,于是在网上看到了Python Challenge这个闯关游戏,据说是2007年为了推广Python弄的这样一个东西。
当时第一次接触玩了两关就玩不下去了(那时候编码能力和学习能力真的是弱的可以)
这段时间又重新找出来做做,发现真的感觉完全不一样了,它每一关都会用到一两个甚至更多个Python的标准库,他会给你一些提示,然后你可以根据提示去Python的官网看看具体库的用法,然后再开始做。这样的话就可以达到一个了解和学习Python标准库的目的。至少下次遇到问题时可以知道用Python的什么库来解决。
在我的博客听雨轩 | You are my convition, but there must be something wrong in my life 里我写了前19关的解题报告,大家可以参考一下。
在这里简单罗列一下每一关用到的库和Python的知识:
第00关:数字计算。
第01关:string
第02关:re 或者用filter函数也可以
第03关:re
第04关:urllib
第05关:pickle
第06关:zipfile
第07关:PIL
第08关:bz2
第09关:turtle 或PIL
第10关:找规律
第11关:PIL
第12关:文件处理
第13关:xmlrpclib
第14关:PIL
第15关:datetime
第16关:PIL
第17关:urllib urllib2 cookielib xmlrpclib
第18关:difflib binascii
第19关:wave
暂时只做到这里。。。后面的有机会继续更新~
=====原答案=====
在网上有一个python challenge的闯关游戏,一关基本就需要用一到两个标准库,然后你可以在实践中知道这些库的用法。我最近在做这个。。安利一下我的博客,里面有自己写的题解。
听雨轩 | You are my convition, but there must be something wrong in my life 用到哪个学哪个,多翻官方文档。 这时候祭出我的小项目: https://pypi.python.org/pypi/rdir ,合作者 @赖渊
可通过 树形结构的html、命令行、文件形式来查看python module或 module内object的递归结构和文档(pydoc)。目前仅支持 *nix的python 2.x,windows未测试,若有Windows用户用过可以反映一下情况,抱歉不会windows。
目前进一步在规划迭代中,欢迎试用拍砖以及提功能建议。report issues: Issues · Lhfcws/rdir · GitHub
Example: rdir/test.py at master · Lhfcws/rdir · GitHub
下载方式: sudo pip install rdir
================ 广告时间结束,开始答题。 =======
1. 如何学习python?
我假设你有其他相关语言基础。找一本如《python基础教程》这样的入门书看一遍,下载个ipython(windows实在不行那个IDLE勉强也可以吧)解释器上跟着教程操作熟悉一下,然后写个小项目比如多人聊天室。你要能把chatroom努力熬出来了,你已经会用python做简单的并行、网络通信和各种基本操作了。建议使用linux / MacOSX系统,因为命令行下你可以写一点小工具进一步去熟悉,其中需要什么库你就去搜索看看有没有。
学会使用 pip 做第三方模块下载管理。
2. 学习标准库
不用专门学习,你需要什么功能就去搜搜人家怎么用,python很多库的文档都不怎么friendly。也许可能有些实现你不知道有库,自己写的很麻烦,但其实无所谓。你能搞出来没问题那就先用着,等到你知道有更好的实现或者发现问题解决很麻烦感觉要造轮子的时候,请搜索。
* 以上回答不适合较有经验的程序员。

Dieses Tutorial zeigt, wie man Python verwendet, um das statistische Konzept des Zipf -Gesetzes zu verarbeiten, und zeigt die Effizienz des Lesens und Sortierens großer Textdateien von Python bei der Bearbeitung des Gesetzes. Möglicherweise fragen Sie sich, was der Begriff ZiPF -Verteilung bedeutet. Um diesen Begriff zu verstehen, müssen wir zunächst das Zipf -Gesetz definieren. Mach dir keine Sorgen, ich werde versuchen, die Anweisungen zu vereinfachen. Zipf -Gesetz Das Zipf -Gesetz bedeutet einfach: In einem großen natürlichen Sprachkorpus erscheinen die am häufigsten vorkommenden Wörter ungefähr doppelt so häufig wie die zweiten häufigen Wörter, dreimal wie die dritten häufigen Wörter, viermal wie die vierten häufigen Wörter und so weiter. Schauen wir uns ein Beispiel an. Wenn Sie sich den Brown Corpus in amerikanischem Englisch ansehen, werden Sie feststellen, dass das häufigste Wort "Th ist

In diesem Artikel wird erklärt, wie man schöne Suppe, eine Python -Bibliothek, verwendet, um HTML zu analysieren. Es beschreibt gemeinsame Methoden wie find (), find_all (), select () und get_text () für die Datenextraktion, die Behandlung verschiedener HTML -Strukturen und -Anternativen (SEL)

Der Umgang mit lauten Bildern ist ein häufiges Problem, insbesondere bei Mobiltelefonen oder mit geringen Auflösungskamera-Fotos. In diesem Tutorial wird die Bildfilterungstechniken in Python unter Verwendung von OpenCV untersucht, um dieses Problem anzugehen. Bildfilterung: Ein leistungsfähiges Werkzeug Bildfilter

PDF-Dateien sind für ihre plattformübergreifende Kompatibilität beliebt, wobei Inhalte und Layout für Betriebssysteme, Lesegeräte und Software konsistent sind. Im Gegensatz zu Python Processing -Klartextdateien sind PDF -Dateien jedoch binäre Dateien mit komplexeren Strukturen und enthalten Elemente wie Schriftarten, Farben und Bilder. Glücklicherweise ist es nicht schwierig, PDF -Dateien mit Pythons externen Modulen zu verarbeiten. In diesem Artikel wird das PYPDF2 -Modul verwendet, um zu demonstrieren, wie Sie eine PDF -Datei öffnen, eine Seite ausdrucken und Text extrahieren. Die Erstellung und Bearbeitung von PDF -Dateien finden Sie in einem weiteren Tutorial von mir. Vorbereitung Der Kern liegt in der Verwendung von externem Modul PYPDF2. Installieren Sie es zunächst mit PIP: pip ist p

Dieses Tutorial zeigt, wie man Redis Caching nutzt, um die Leistung von Python -Anwendungen zu steigern, insbesondere innerhalb eines Django -Frameworks. Wir werden Redis -Installation, Django -Konfiguration und Leistungsvergleiche abdecken, um den Vorteil hervorzuheben

Dieser Artikel vergleicht TensorFlow und Pytorch für Deep Learning. Es beschreibt die beteiligten Schritte: Datenvorbereitung, Modellbildung, Schulung, Bewertung und Bereitstellung. Wichtige Unterschiede zwischen den Frameworks, insbesondere bezüglich des rechnerischen Graps

Dieses Tutorial zeigt, dass eine benutzerdefinierte Pipeline -Datenstruktur in Python 3 erstellt wird, wobei Klassen und Bedienerüberladungen für verbesserte Funktionen genutzt werden. Die Flexibilität der Pipeline liegt in ihrer Fähigkeit, eine Reihe von Funktionen auf einen Datensatz GE anzuwenden

Python, ein Favorit für Datenwissenschaft und Verarbeitung, bietet ein reichhaltiges Ökosystem für Hochleistungs-Computing. Die parallele Programmierung in Python stellt jedoch einzigartige Herausforderungen dar. Dieses Tutorial untersucht diese Herausforderungen und konzentriert sich auf die globale Interprete


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Dreamweaver CS6
Visuelle Webentwicklungstools

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

mPDF
mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung
