实习需要,读了python的程序,归来决定系统地学习一下这个被称为“学得最划算”的语言。
集各家之言,先对Python做一个简介:
探索 Python,第 1 部分: Python 的内置数值类型(简单类型)
探索 Python,第 2 部分: 探索 Python 类型的层次结构(容器类型:元组 tuple)
探索 Python,第 3 部分: 探索 Python 类型的层次结构(容器类型:字符串 string)
探索 Python,第 4 部分: 探索 Python 类型的层次结构(容器类型:列表 list)
探索 Python,第 5 部分: 用 Python 编程(if语句,while循环)
探索 Python,第 6 部分: 用 Python 编程(for循环)
探索 Python,第 7 部分: 探索 Python 类型层次结构(容器类型:字典 dictionary)
探索 Python,第 8 部分: 用 Python 的输入输出功能读取和写入数据
探索 Python,第 9 部分: 化零为整
简明Python教程系列:
简明python教程 --C++程序员的视角(一):数值类型、字符串、运算符和控制流
简明python教程 --C++程序员的视角(二):函数
简明python教程 --C++程序员的视角(三):模块
简明python教程 --C++程序员的视角(四):容器类型(字符串、元组、列表、字典)和参考
简明python教程 --C++程序员的视角(五):面向对象的编程
简明python教程 --C++程序员的视角(六):输入输出
简明python教程 --C++程序员的视角(七):异常
简明python教程 --C++程序员的视角(八):标准库
简明python教程 --C++程序员的视角(九):进阶用法
Python速查系列:
Python变量和对象类型速记手册
Python正则表达式集锦
The python debugger(PDB)的简介
Python绘图系列:
Python图像处理库PIL -- 学习资源
Python图像处理库(PIL)--简介和基本概念
Python图像处理库(PIL)--Image,ImageDraw等基本模块介绍
纪伯伦小诗:PIL多图合并DIY桌面
Python图表绘制:matplotlib绘图库入门
Google's Python Class | Understanding Python 国内下载地址 翻译(谷歌Python课程导读,安装Python,Python简介,Python 字符串)
MIT公开课:计算机科学及编程导论(Python教学)
两个Python中文社区:啄木鸟Python开源社区 python中国
Python 语言研究:关注 Python 本身语言、语法的研究和探讨,收集整理相关的文档和心得(尤其是中文资料)
开始学习python , 如何成为 Python 高手
Python视频教程
Python图书概览:Python 安装包中附带的官方文档永远是最有价值的资料之一;书不必贪多,精读三五本好书,胜过藏书万卷
python 入门书籍推荐, 三本可以一买的 Python 书
对于语言特性的学习来说,特别推荐前四本:
(8.6分/144)Python入门指南《Python Tutorial》(中英对照版,简体中文版) -- 最新,最权威,公开文档
如果你想在最短的时间内就了解python的最基础使用, 那么不妨花几个小时时间看看这份官方的python入门教材
-- 最权威的 Python 教程,由 Python 作者 Guido van Rossum 主笔,有少许学院味道。
(8.8分/492)简明python教程《A Byte of Python》(英文、中文译本、CHM打包文档下载)-- 简洁明了,浅显易懂,公开文档
由浅入深讲述了python的方方面面内容, 适合对python快速入门
-- 简洁明了的 Python 教程,即使没有编程基础也可阅读。
(8.7分/159)Python Cookbook —— 编程惯例
以实例学习为主,覆盖面较广但不会太深入,主要针对水平在初学者之上的读者(已经熟悉 Python 的基本语法)
Python Cookbook 2nd Edition
ActiveState 的 Python Cookbook 专栏
《Python食谱》 -- 啄木鸟图书翻译项目,基于第一版,未完成
(8.3分/958)Dive Into Python(英文镜像,中文版,Python 研究)这是一本写给有经验的程序员的参考书,并不是推荐给新手的
--为有经验的程序员编写的颇受好评的 Python 教程
该书以问题和实例程序为线索,不仅讲授 Python 的语法,同时还引导读者学习 Pythonic 的编程风格。书中大量的延伸阅读链接也很有价值。
(8.4分/67)Python自然语言处理《Natural Language Processing with Python》
(8.2分/95)Python科学计算(博文,视频)
(7.6分/27)《Text Process in Python》的附录A :python精要 “对 python 的超精简的但绝不失深度的介绍” -- from 译者 HuangYi
(7.7分/139)python学习手册《Learning Python》(《学习Python(第二版影印版)》 ,《Python语言入门(第一版中文版)》 ) -- 最细致,最深入
最好的讲解 Python 语言特性的书籍,文字浅显,辅以大量示例,即使初学者也可当作教材学习。
与此同时兼顾了内容的深度和广度,即使是有经验的 Python 程序员也会有所收获。原书第二版主要基于 Python 2.3,作者在主页上更新了关于 2.4 以后新语言特性的章节。
(7.4分/651)可爱的Python —— CPyUG社区的邮件列表,由Python的行者根据自身经验组织而成
(7.7分/857)Python核心编程/Core Python Programming —— 全面学习
(7.5分/93)Python参考手册
下面的文章给你描述了一个最小的应该遵守的规范合集。如果按照这些指导原则,你将能编写出更简洁和漂亮的代码。作为附加效应,你的程序会变得可读性更好,更容易的被你和任何其他人修改。
Some Popular Python Articles
Python的八荣八耻
以动手实践为荣, 以只看不练为耻。
以打印日志为荣, 以单步跟踪为耻。
以空白分隔为荣, 以制表分隔为耻。
以单元测试为荣, 以手工测试为耻。以代码重用为荣, 以复制粘贴为耻。
以多态应用为荣, 以分支判断为耻。
以Pythonic为荣,以冗余拖沓为耻。
以总结思考为荣, 以不求甚解为耻。
推荐使用IDE python(x,y),发布的Python(x,y)将近400M,收集了众多的函数库以及文档、教程。这也是《用Python做科学计算》一书中推荐的(文)。
Python二三事:“发行版附带了科学计算方面的很多常用库,另外还有大量常用库比如用于桌面软件界面制作的 PyQt, 还有文档处理,exe文件生成py2exe等常用库。另外的还有大量的工具如IDE,制图制表工具,加强的shell之类。很多下文提到的软件在此发行版中都有附带。其他方面,Python(x, y)还附带了手工整理出的所有库的离线文档,每个小版本升级都提供单独的补丁。总的来说是很用心维护的一个发行版,十分建议安装这个版本。”“在真正着手开发之前,你应该在下载一份离线的文档。在 这个页面下载一份 HTML 格式的(打不开的话试试 这里),解压出来其中 index.html 就是文档主页面。页面左边的 Quick Search 是离线也可以使用的,有对函数功能有疑惑或者要查询模块的时候就能在这里查看。”(python(x,y)自带这个python文档 )
Python(x,y) has five main features:
- collecting scientific-oriented Python libraries and development environment tools ;
- collecting almost all free related documentation ;
- providing a quick guide to get started in Python / Qt / Spyder ;
- providing an all-in-one setup program, so the user can install or uninstall all these packages and features by clicking on one button only.
Python(x,y) was created for :
- rapid prototyping, using the enhanced Python shell known as IPython ;
- small/big projects (application-like) development, using Spyder - a powerful and interactive cross-platform Integrated Development Environment (IDE) ;
- scientific purpose: scientific computing, numerical simulations, signal processing, image processing, physics (experiments and modeling), engineering, ...
安装后有ipython(interactive console,豪华加强版python shell)和spyder(这个powerful scientific IDE类似matlab,而IDLE是Python作者提供的简单Python开发环境)这两个常用工具。
python数值计算库:NumPy为Python提供了快速的多维数组处理的能力,而SciPy则在NumPy基础上添加了众多的科学计算所需的各种工具包,有了这两个库,Python就有几乎和Matlab一样的处理数据和计算的能力了。
虽然Python是一个非常成功的语言,但是也有必要明白它的局限性。
简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。
易学:Python极其容易上手,因为Python有极其简单的语法。
免费、开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。
高层语言:用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
可移植性:由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE、PocketPC、Symbian以及Google基于linux开发的android平台。
解释性:一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。
运行程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。
在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。这使得使用Python更加简单。也使得Python程序更加易于移植。
面向对象:Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。
可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以部分程序用C或C++编写,然后在Python程序中使用它们。
可嵌入性:可以把Python嵌入C/C++程序,从而向程序用户提供脚本功能。
丰富的库:Python标准库确实很庞大。它可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。
规范的代码
:Python采用强制缩进的方式使得代码具有较好可读性。
强制缩进:这也许不应该被称为局限,但是它用缩进来区分语句关系的方式还是给很多初学者带来了困惑。
单行语句和命令行输出问题:很多时候不能将程序连写成一行,如import sys;for i in sys.path:print i。而perl和awk就无此限制,可以较为方便的在shell下完成简单程序,不需要如Python一样,必须将程序写入一个.py文件。
from: http://www.cnblogs.com/wei-li/archive/2012/03/24/2415124.html