回复内容:
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。也许可能有些实现你不知道有库,自己写的很麻烦,但其实无所谓。你能搞出来没问题那就先用着,等到你知道有更好的实现或者发现问题解决很麻烦感觉要造轮子的时候,请搜索。
* 以上回答不适合较有经验的程序员。

Tutorial ini menunjukkan cara menggunakan Python untuk memproses konsep statistik undang -undang ZIPF dan menunjukkan kecekapan membaca dan menyusun fail teks besar Python semasa memproses undang -undang. Anda mungkin tertanya -tanya apa maksud pengedaran ZIPF istilah. Untuk memahami istilah ini, kita perlu menentukan undang -undang Zipf. Jangan risau, saya akan cuba memudahkan arahan. Undang -undang Zipf Undang -undang Zipf hanya bermaksud: Dalam korpus bahasa semulajadi yang besar, kata -kata yang paling kerap berlaku muncul kira -kira dua kali lebih kerap sebagai kata -kata kerap kedua, tiga kali sebagai kata -kata kerap ketiga, empat kali sebagai kata -kata kerap keempat, dan sebagainya. Mari kita lihat contoh. Jika anda melihat corpus coklat dalam bahasa Inggeris Amerika, anda akan melihat bahawa perkataan yang paling kerap adalah "th

Artikel ini menerangkan cara menggunakan sup yang indah, perpustakaan python, untuk menghuraikan html. Ia memperincikan kaedah biasa seperti mencari (), find_all (), pilih (), dan get_text () untuk pengekstrakan data, pengendalian struktur dan kesilapan HTML yang pelbagai, dan alternatif (sel

Berurusan dengan imej yang bising adalah masalah biasa, terutamanya dengan telefon bimbit atau foto kamera resolusi rendah. Tutorial ini meneroka teknik penapisan imej di Python menggunakan OpenCV untuk menangani isu ini. Penapisan Imej: Alat yang berkuasa Penapis Imej

Fail PDF adalah popular untuk keserasian silang platform mereka, dengan kandungan dan susun atur yang konsisten merentasi sistem operasi, peranti membaca dan perisian. Walau bagaimanapun, tidak seperti Python memproses fail teks biasa, fail PDF adalah fail binari dengan struktur yang lebih kompleks dan mengandungi unsur -unsur seperti fon, warna, dan imej. Mujurlah, tidak sukar untuk memproses fail PDF dengan modul luaran Python. Artikel ini akan menggunakan modul PYPDF2 untuk menunjukkan cara membuka fail PDF, mencetak halaman, dan mengekstrak teks. Untuk penciptaan dan penyuntingan fail PDF, sila rujuk tutorial lain dari saya. Penyediaan Inti terletak pada menggunakan modul luaran PYPDF2. Pertama, pasangkannya menggunakan PIP: Pip adalah p

Tutorial ini menunjukkan cara memanfaatkan caching redis untuk meningkatkan prestasi aplikasi python, khususnya dalam rangka kerja Django. Kami akan merangkumi pemasangan Redis, konfigurasi Django, dan perbandingan prestasi untuk menyerlahkan bene

Artikel ini membandingkan tensorflow dan pytorch untuk pembelajaran mendalam. Ia memperincikan langkah -langkah yang terlibat: penyediaan data, bangunan model, latihan, penilaian, dan penempatan. Perbezaan utama antara rangka kerja, terutamanya mengenai grap pengiraan

Tutorial ini menunjukkan mewujudkan struktur data saluran paip tersuai di Python 3, memanfaatkan kelas dan pengendali yang berlebihan untuk fungsi yang dipertingkatkan. Fleksibiliti saluran paip terletak pada keupayaannya untuk menggunakan siri fungsi ke set data, GE

Python, kegemaran sains dan pemprosesan data, menawarkan ekosistem yang kaya untuk pengkomputeran berprestasi tinggi. Walau bagaimanapun, pengaturcaraan selari dalam Python memberikan cabaran yang unik. Tutorial ini meneroka cabaran -cabaran ini, memberi tumpuan kepada Interprete Global


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Dreamweaver Mac版
Alat pembangunan web visual

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!
