廖雪峰Python学习笔记
文章平均质量分 80
张文彬彬
这个作者很懒,什么都没留下…
展开
-
Python函数使用
函数基础Python内置了很多有用的函数,我们可以直接调用。要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数。可以直接从Python的官方网站查看文档:http://docs.python.org/3/library/functions.html#abs调用函数的时候,如果传入的参数数量不对,会报TypeError的错误,并且Python会明确地告诉你:abs()有...转载 2018-01-02 10:44:03 · 444 阅读 · 1 评论 -
Python生成器与迭代器
生成器:generator 列表元素可以按照某种算法推算出来,在循环的过程中不断推算出后续的元素,不必创建完整的list,从而节省大量的空间。在Python中,这种一边循环一边计算的机制,称为生成器:generator。第一种方法 只要把一个列表生成式的[]改成(),就创建了一个generator:g = (x * x for x in range(10))for i in g: ...原创 2018-03-22 23:27:16 · 191 阅读 · 0 评论 -
Python使用Web API数据可视化
Web应用编程接口 (API)自动请求网站的特定信息而不是整个网页,再对这些信息进行可视化。由于这样编写的程序始终使用最新的数据来生成可视化,因此即便数据瞬息万变,它呈现的信息也都是最新的。 Web API是网站的一部分,用于与使用非常具体的URL请求特定信息的程序交互。这种请求称为API调用。请求的数据将以易于处理的格式(如JSON或CSV)返回。依赖于外部数据源的大多数应用程序都...原创 2018-03-19 19:42:53 · 9364 阅读 · 4 评论 -
Python函数式编程——高阶函数、返回函数、匿名函数、装饰器、偏函数
函数式编程 函数是Python内建支持的一种封装,通过把大段代码拆成函数,通过一层一层的函数调用,把复杂任务分解成简单的任务,这种分解称之为面向过程的程序设计。函数就是面向过程的程序设计的基本单元。 函数式编程——Functional Programming,虽然也可以归结到面向过程的程序设计,但其思想更接近数学计算。 函数式编程是一种抽象程度很高的编程范式,纯粹的函数式编程语言...原创 2018-03-23 22:30:21 · 508 阅读 · 0 评论 -
Python练习Django项目——学习笔记
学习如何使用Django(http://djangoproject.com/ )来开发一个名为“学习笔记”(Learning Log)的项目,这是一个在线日志系统,让你能够记录所学习的有关特定主题的知识。 首先为这个项目制定规范,然后为应用程序使用的数据定义模型。我们将使用Django的管理系统来输入一些初始数据,再学习编写视图和模板,让Django能够为我们的网站创建网页。最后将改...转载 2018-03-20 22:35:09 · 5954 阅读 · 4 评论 -
Python进程和线程
对于操作系统来说,一个任务就是一个进程(Process);在一个进程内部,要同时干多件事,就需要同时运行多个“子任务”,我们把进程内的这些“子任务”称为线程(Thread)。 线程是最小的执行单元,而进程由至少一个线程组成 Python多任务的实现有3种方式:多进程模式;多线程模式;多进程+多线程模式多进程 了解操作系统的相关知识,Unix/Linux操作系统提供了一个f...原创 2018-03-29 23:37:25 · 240 阅读 · 0 评论 -
Python正则表达式
在正则表达式中,如果直接给出字符,就是精确匹配。用\d可以匹配一个数字,\w可以匹配一个字母或数字: '00\d'可以匹配'007',但无法匹配'00A'; '\d\d\d'可以匹配'010'; '\w\w\d'可以匹配'py3';.可以匹配任意字符,所以: 'py.'可以匹配'pyc'、'pyo'、'py!'等等。 要匹配变长的字符,在正则表达式中,用*表示任意个字...原创 2018-04-08 22:14:17 · 192 阅读 · 0 评论 -
Python模块
有的函数和变量我们希望仅仅在模块内部使用。在Python中,是通过_前缀来实现的。 类似_xxx和__xxx这样的函数或变量就是非公开的(private),不应该被直接引用,比如_abc,__abc等;之所以我们说,private函数和变量“不应该”被直接引用,而不是“不能”被直接引用,是因为Python并没有一种方法可以完全限制访问private函数或变量,但是,从编程习惯上不...原创 2018-03-26 16:52:00 · 128 阅读 · 0 评论 -
Python面向对象高级编程
1.给实例动态绑定方法:class Student(object): pass>>> s = Student()>>> def set_age(self, age): # 定义一个函数作为实例方法... self.age = age...>>> from types import MethodType>>&...原创 2018-03-27 23:43:14 · 302 阅读 · 0 评论 -
Python常用內建模块
datetime datetime是Python处理日期和时间的标准库。获取当前日期和时间>>> from datetime import datetime>>> now = datetime.now() # 获取当前datetime>>> print(now)2015-05-18 16:28:07.198690>>&...原创 2018-04-12 12:06:54 · 244 阅读 · 0 评论 -
Python第三方模块
Pillow PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。PIL功能非常强大,但API却非常简单易用。PIL仅支持到Python 2.7,Pillow,支持最新Python 3.x,又加入了许多新特性,因此,我们可以直接安装使用Pillow。操作图像最常见的图像缩放操作,只需三四行代码:from PIL import Image#...原创 2018-04-12 13:23:32 · 310 阅读 · 0 评论 -
virtualenv创建隔离python运行环境
在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.6。所有第三方的包都会被pip安装到Python3的site-packages目录下。 如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python 3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6这种情况下,每个应用可能需要各自拥有一套“独立”的P...原创 2018-04-12 13:42:14 · 567 阅读 · 0 评论 -
Python网络编程TCP/UDP
TCP/IP简介 互联网协议包含了上百种协议标准,但是最重要的两个协议是TCP和IP协议,所以,大家把互联网的协议简称TCP/IP协议。 通信的时候,双方必须知道对方的标识,好比发邮件必须知道对方的邮件地址。互联网上每个计算机的唯一标识就是IP地址,类似123.123.123.123。如果一台计算机同时接入到两个或更多的网络,比如路由器,它就会有两个或多个IP地址,所以,IP地址对应的...原创 2018-04-12 16:00:11 · 566 阅读 · 0 评论 -
Python电子邮件
发邮件流程:假设我们自己的电子邮件地址是me@163.com 电子邮件软件被称为MUA:Mail User Agent——邮件用户代理。(Outlook或者Foxmail之类的软件) Email从MUA发出去,不是直接到达对方电脑,而是发到MTA:Mail Transfer Agent——邮件传输代理,即Email服务提供商,比如网易、新浪等等,由于自己的电子邮件是163.com,所以...原创 2018-04-12 16:25:46 · 398 阅读 · 0 评论 -
Python调试、异常、测试
调试 1.print() 用print()把可能有问题的变量打印出来,但是用print()最大的坏处是将来还得删掉它,想想程序里到处都是print(),运行结果也会包含很多垃圾信息 2.断言 凡是可能有问题的变量,都可以用断言(assert)来替代:def foo(s): n = int(s) assert n != 0, 'n is zero!' ...原创 2018-03-08 22:52:49 · 25990 阅读 · 4 评论 -
Python可视化数据学习
使用matplotlib制作图表制作简单的折线图import matplotlib.pyplot as pltinput_values = [1,2,3,4,5]squares = [1,4,9,16,25]plt.plot(input_values,squares,linewidth=5)#设置图表标题,并给坐标轴加上标签plt.title("Square Number",fonts...原创 2018-03-15 13:29:29 · 1415 阅读 · 2 评论 -
Python之IO编程——文件读写、StringIO/BytesIO、操作文件和目录、序列化
IO编程 IO在计算机中指Input/Output,也就是输入和输出。由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘、网络等,就需要IO接口。从磁盘读取文件到内存,就只有Input操作,反过来,把数据写到磁盘文件里,就只是一个Output操作。 由于CPU和内存的速度远远高于外设的速度,所以,在IO编程中,就存在速度严重不匹配的问...原创 2018-03-07 22:57:40 · 23791 阅读 · 0 评论 -
Python迭代与递归函数
迭代如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)。Python的for循环不仅可以用在list或tuple上,还可以作用在其他可迭代对象上。list这种数据类型虽然有下标,但很多其他数据类型是没有下标的,但是,只要是可迭代对象,无论有无下标,都可以迭代,比如dict就可以迭代:>>> d = {...转载 2018-01-03 16:20:39 · 3926 阅读 · 1 评论 -
Python面向对象编程——类的学习
面向对象编程 面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。 面向过程的程序设计把计算机程序视为一系列的命令集合,即一组函数的顺序执行。为了简化程序设计,面向过程把函数继续切分为子函数,即把大块函数通过切割成小块函数来降低系统的复杂度。而面向对象的程序设计把计算...原创 2018-01-31 19:15:54 · 508 阅读 · 0 评论 -
Python数据结构的一些技巧、数据结构练习、循环与判断练习题
Python数据结构的一些技巧多重循环sorted函数按照长短、大小、英文字母的顺序给每个列表中的元素进行排序。sorted函数不会改变列表本身顺序,可以理解为先将列表进行复制,再进行顺序的整理,num_list = [6,2,7,4,1,3,5]print(sorted(num_list))在使用默认参数reverse后李彪可以按照逆序整理:sorted(num_list,reverse=Tr...原创 2018-02-01 17:08:37 · 601 阅读 · 0 评论 -
Python使用条件控制与循环
条件控制if Python只执行if-elif-else 结构中的一个代码块,它依次检查每个条件测试遇到通过了的条件测试。测试通过后,Python将执行紧跟在它后面的代码,并跳过余下的测试。 else 是一条包罗万象的语句,只要不满足任何if 或elif 中的条件测试,其中的代码就会执行,这可能会引入无效甚至恶意的数据。如果知道最终要测试的条件,应考虑使用一个elif 代码块来代替el...转载 2017-12-29 16:04:03 · 1337 阅读 · 0 评论 -
python基础
变量的命名和使用:1、变量名只能包含字母、数字和下划线。变量名可以字母或下划线打头,但不能以数字打头2、变量名不能包含空格,但可使用下划线来分隔其中的单词3、不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词注意 就目前而言,应使用小写的Python变量名。在变量名中使用大写字母虽然不会导致错误,但避免使用大写字母是个不错的主意input()最后看一个有问题...转载 2018-01-16 17:37:00 · 212 阅读 · 0 评论 -
Python字符串
在最新的Python 3版本中,对于单个字符的编码,Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符>>> ord('A')65>>> ord('中')20013>>> chr(66)'B'>>> chr(25991)'文'如果知道字符的整数编码,还可以用十六进制这么写st...转载 2017-12-28 14:55:49 · 171 阅读 · 0 评论 -
Python数据结构学习(列表、字典、元组、集合)
list:使用方括号 [ ]1、列表基础知识列表中的每一个元素都是可变的;列表中的元素是有序的,即每一个元素都有一个位置;列表可以容纳Python中的任何对象。Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。列出班里所有同学的名字,就可以用一个list表示:>>> classmates = ['Michael', 'Bo...转载 2017-12-29 17:33:33 · 1038 阅读 · 0 评论 -
Python访问数据库
SQLite3表是数据库中存放关系数据的集合,一个数据库里面通常都包含多个表,表和表之间通过外键关联。要操作关系数据库,首先需要连接到数据库,一个数据库连接称为Connection;连接到数据库后,需要打开游标,称之为Cursor,通过Cursor执行SQL语句,然后,获得执行结果。Python定义了一套操作数据库的API接口,任何数据库要连接到Python,只需要提供符合Python标准的数据库...原创 2018-04-12 20:57:29 · 384 阅读 · 0 评论