python学习笔记
python
HappyMrSpring
这个作者很懒,什么都没留下…
展开
-
深入浅出--梯度下降法及其实现
转自:https://www.jianshu.com/p/c7e642877b0e梯度下降的场景假设 梯度 梯度下降算法的数学解释 梯度下降算法的实例 梯度下降算法的实现 Further reading本文将从一个下山的场景开始,先提出梯度下降算法的基本思想,进而从数学上解释梯度下降算法的原理,最后实现一个简单的梯度下降算法的实例!梯度下降的场景假设梯度下降法的基本...转载 2018-10-08 15:08:07 · 220 阅读 · 0 评论 -
只需十四步:从零开始掌握Python机器学习(附资源)
转自:https://www.jiqizhixin.com/articles/2017-03-14-2Python 可以说是现在最流行的机器学习语言,而且你也能在网上找到大量的资源。你现在也在考虑从 Python 入门机器学习吗?本教程或许能帮你成功上手,从 0 到 1 掌握 Python 机器学习,至于后面再从 1 到 100 变成机器学习专家,就要看你自己的努力了。本教程原文分为两个部分,...转载 2018-09-11 17:42:31 · 453 阅读 · 0 评论 -
元类
转自:http://python.jobbole.com/88795/ 千万不要被所谓“元类是99%的python程序员不会用到的特性”这类的说辞吓住。因为每个中国人,都是天生的元类使用者学懂元类,你只需要知道两句话:道生一,一生二,二生三,三生万物 我是谁?我从哪来里?我要到哪里去?在python世界,拥有一个永恒的道,那就是“type”,请记在脑海中,type就是道。如此广袤...转载 2018-08-28 17:23:25 · 152 阅读 · 0 评论 -
python中重要的模块--asyncio
转自:https://www.cnblogs.com/zhaof/p/8490045.html一直对asyncio这个库比较感兴趣,毕竟这是官网也非常推荐的一个实现高并发的一个模块,python也是在python 3.4中引入了协程的概念。也通过这次整理更加深刻理解这个模块的使用asyncio 是干什么的?异步网络操作 并发 协程python3.0时代,标准库里的异步网络模块:s...转载 2018-08-23 11:30:05 · 132 阅读 · 0 评论 -
python装饰器
转自:http://python.jobbole.com/81683/呵呵!作为一名教python的老师,我发现学生们基本上一开始很难搞定python的装饰器,也许因为装饰器确实很难懂。搞定装饰器需要你了解一些函数式编程的概念,当然还有理解在python中定义和调用函数相关语法的一些特点。我没法让装饰器变得简单,但是通过一步步的剖析,我也许能够让你在理解装饰器的时候更自信一点。因为装饰器很...转载 2018-08-20 11:04:22 · 82 阅读 · 0 评论 -
Python的GIL是什么鬼,多线程性能究竟如何
文章欢迎转载,但转载时请保留本段文字,并置于文章的顶部 作者:卢钧轶(cenalulu) 本文原文地址:http://cenalulu.github.io/python/gil-in-python/GIL是什么首先需要明确的一点是GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念。就好比C++是一套语言(语法)标准,但...转载 2018-08-10 18:24:47 · 1435 阅读 · 2 评论 -
Python初体验:python程序获取bash脚本中某个变量的值
1. 需求:python程序获取bash脚本中某个变量的值。2. 实现:2.1 ./version-gen-bypass.sh脚本将变量值输出到文件./.verno中。2.2 通过python文件IO获取./.verno中的变量值。此时line6中的pVERNO字符串变量中含有换行符'\n'。2.3 通过line10和line11将获取到的字符串首先转换为整数,然后将整数转换为字符串,目的是去掉换...原创 2018-04-19 18:40:58 · 1731 阅读 · 0 评论 -
廖雪峰python学习笔记【1】准备阶段
一、python解释器: 1. CPython:官方python解释器。 2. IPython:基于CPython,交互功能有所增强。 3. PyPy:动态编译,目标是提高python代码的执行速度。 4. Jyphon:Java平台上的python解释器,将python代码编译成Java字节码。 5. IronPython:运行于.Net平台二、python2和py...原创 2018-04-27 17:33:23 · 146 阅读 · 0 评论 -
廖雪峰python学习笔记【2】数据类型、字符串和编码
一、数据类型和变量 1. python大小写敏感。 2. python采用缩进来组织代码块,代码块的上一行以冒号“:”结尾。 3. 字符串 3.1 r'...':'...'内的字符串默认不转义。print(r'\n\t\') #输出:\n\t\。 3.2 '''...''':表示多行内容。 4. 布尔值 4.1 用True和Fals...原创 2018-04-27 17:40:45 · 152 阅读 · 0 评论 -
廖雪峰python学习笔记【3】list和tuple、分支和循环、dict和set
一、list和tuple1. list: 1.1 一种有序的集合; 1.2 用'[]'表示,如:classmates = ["lfc", "wty", "zsy"]; 1.3 用len()函数可以计算list元素的个数。 1.4 list中元素的类型可以不同。 1.5list中的元素可以是list,由此可构造类似多维数组的结构。2. list元素的增删: 2.1...原创 2018-05-03 18:38:43 · 169 阅读 · 0 评论 -
廖雪峰python学习笔记【4】函数调用和函数定义
一、调用函数1. 函数abs():求决定值。如:abs(-1) == 1, abs(-1.1) == 1.12. 调用函数时,如果传入的参数个数和参数类型不对时,会报TypeError错误。3. 函数max():返回最大值,可以接收多个参数。如:max(1, 1.1, 4, -5) == 4。4. 数据类型转换: 4.1 int('1234') == 1234 # 将字符串转换为整数。 ...原创 2018-05-04 16:04:04 · 165 阅读 · 0 评论 -
廖雪峰python学习笔记【5】函数的参数和递归函数
一、函数的参数1. 位置参数:参数个数和位置确定,调用者必须依次传入。2. 默认参数: 2.1 定义方式:位置参数在前,默认参数在后。示例:def my_power(base, sqr=2) : # 不传入默认参数sqr时,默认计算base的2次方;传入sqr参数时,计算base的sqr次方。 2.2 原则:变化大的参数作为位置参数,变化小的参数作为默认参数,降低程序调用的复杂性。 ...原创 2018-05-07 16:23:25 · 300 阅读 · 0 评论 -
廖雪峰python学习笔记【6】高级特性:切片和迭代
一、切片1. 切片对象:list, tuple,str等可以看成列表的对象。2. 切片操作符: 2.1 old = '0123456789'。 2.2 new = old[:] #new与old相同。 2.3 new = old[0:2] # new = '01' #左闭右开。 2.4 new = old[:2] # new = '01' # 索引0可不写。 2.5 ...原创 2018-05-10 17:53:44 · 119 阅读 · 0 评论 -
廖雪峰python学习笔记【7】高级特性:列表生成式、生成器和迭代器
一、列表生成式1. 列表生成式:python内置的用来创建list的生成式。根据一个list生成另一个list.2. 示例: 2.1 list(range(1,6)) #可以用来生成列表[1, ,2, 3, 4, 5] 2.2 [x * x for x in range(1, 6)] # 可以用来生成列表[1, 4, 9, 16, 25] 2.3 [x * x for x in ...原创 2018-05-14 17:18:42 · 189 阅读 · 0 评论 -
廖雪峰python学习笔记【8】函数式编程:map/reduce、filter和sorted
一、函数式编程1. 函数:是面向过程的程序设计的基本单位。2. 函数式编程:纯粹的函数式编程语言编写的函数没有变量。如果输入确定,输出就是确定的。3. python对函数式编程提供部分支持,因为python允许使用变量。二、高阶函数1. 变量可以指向函数。2. 函数名也是变量:函数名是指向函数的变量。3. 高阶函数:把函数作为参数传入另一个函数。三、map:1. 接收两个参数:一个是函数,另一个是...原创 2018-05-16 17:47:07 · 150 阅读 · 0 评论 -
廖雪峰python学习笔记【9】函数式编程:返回函数、匿名函数、装饰器和偏函数
一、返回函数1. 一个函数可以返回一个计算结果,也可以返回一个函数。2. 返回一个函数时,牢记该函数并未执行,返回函数中不要引用任何可能会变化的变量(例如在返回函数中引用循环变量)。二、匿名函数1. 定义:示例:lambda x : x * x2. 用关键字lambda表示匿名函数;3. 冒号前的x表示函数参数;4. 返回值是冒号后表达式的值;5. 注意匿名函数是一个函数对象。可以作为函数的参数,...原创 2018-05-17 18:37:04 · 169 阅读 · 0 评论 -
廖雪峰python学习笔记【10】模块
一、模块1. 在python中,一个.py文件称为一个模块(module)。 1.1. 相同名字的函数名和变量名可以存在于不同的模块中。2. 为避免模块名冲突,引入包的概念。 2.1. 相同模块名可以存在于不同包中。 2.2 每个包中都必须存在__init__.py 2.2.1 __init__.py可以是空文件。 2.2.2 __init__.py本...原创 2018-05-29 12:13:16 · 154 阅读 · 0 评论 -
廖雪峰python学习笔记【11】面向对象编程
一、面向对象编程1. 面向对象首先考虑的不是程序的执行流程,而是类的设计。2. 数据封装,继承和多态是面向对象的三大特点。二、类和实例1. 类中__init__方法中的第一个参数self,指向的是创建的实例本身。2. 方法就是与实例绑定的函数。3. python是动态语言,允许对实例变量绑定任何数据。也就是说创建实例后,仍然可以动态的为实例绑定变量(属性)。三、访问限制1. 通过在属性名称前加双下...原创 2018-05-29 12:20:40 · 228 阅读 · 0 评论 -
廖雪峰python学习笔记【12】面向对象高级编程:__slots__ 和@property
一、使用__slots__1. python是动态语言,允许在创建类的实例后,给实例绑定属性和方法。 1.1. 绑定属性:obj.NewAttr = value. 1.2 绑定方法: 1.2.1 第一步定义一个函数:def NewMethod(self, other param): 1.2.2 第二步导入types模块中的MethodType函数:from ...原创 2018-05-31 15:46:55 · 198 阅读 · 0 评论 -
廖雪峰python学习笔记【13】面向对象高级编程:多重继承、定制类、枚举类、元类
一、多重继承1. Java是单一继承,Python是多重继承。2. 多重继承的好处是避免了复杂庞大的继承链。3. 多重继承时,提供基本功能的父类作为继承的第一个类,其他类名最好以MinIn结尾,体现出继承关系。二、定制类1.__len__方法:类中实现__len__方法后,类的实例能够通过len()函数获取实例的长度(即__len__方法的返回值)。2. __str_...原创 2018-06-05 12:25:08 · 305 阅读 · 0 评论 -
廖雪峰python学习笔记【14】错误、调试和测试
一、含义:1. 错误:python内置了一套异常处理机制来进行程序运行错误时的处理。2. 调试:python的pdb允许单步调试。3. 测试:编写测试程序。二、错误处理1. 错误码机制:错误码需要逐级上报,直到某个函数能够处理该错误。2. try...except...finally... 2.1 finally...语句块可以不写。 2.2 将可能出现错误的语句块放在try中。 ...原创 2018-06-06 18:11:25 · 308 阅读 · 0 评论 -
廖雪峰python学习笔记【15】IO编程
一、IO编程: 1. 本章介绍的IO都是同步IO。二、文件读写1. 读文件 1.1 f = open('try.py', 'r') # 读文件之前,需要首先打开文件。指定文件名和读方式,返回文件对象。 1.2 f.read() # 一次性读取文件的全部内容。返回的是str对象。 1.3 f.read(size) # 读取指定字节的文件内容。返回的是str对象。 1.4...原创 2018-06-12 12:07:44 · 443 阅读 · 0 评论 -
廖雪峰python学习笔记【16】进程和线程:多进程、多线程
一、多进程1. fork返回两次的原因:调用fork时,操作系统把当前进程复制了一份,然后fork在父子进程分别返回了一次。2. python的os模块内的fork只能在linux类系统上调用: 2.1 import os 2.2 pid = os.fork() # pid在子进程中为0;在父进程中为子进程的进程id。3. multiprocessing模块 3.1 multip...原创 2018-06-12 16:15:53 · 951 阅读 · 0 评论 -
廖雪峰python学习笔记【17】正则表达式
1. 元字符: 1.1 "\d" : 匹配一个数字。 1.2 "\w" : 匹配一个数字或字符。 1.3 "\s" : 匹配一个空格或tab等空白符。 1.4 ". " : 匹配任意一个字符。 1.5 "*" : 匹配任意个字符前面的字符(包括0个)。 1.6 "+" : 至少匹配一个前面的字符。 1.7 "?" : 匹原创 2018-06-21 17:02:58 · 365 阅读 · 0 评论 -
廖雪峰python学习笔记【18】datetime
1. 获取当前时间 1.1 from datetime import datetime # 从datetime模块导入datetime类。 1.2 dt = datetime.now() # 获取当前时间,dt是datetime类的一个实例。2. 获取指定日期和时间 2.1 df = datetime(2018, 6, 21, 18,15) # 直接用指定的日期时间参数创建dat...原创 2018-06-22 15:14:04 · 225 阅读 · 0 评论 -
廖雪峰python学习笔记【19】collections
1. collections是python内置的一个集合模块。提供了许多有用的集合类。2. namedtuple 2.1 namedtuple是collections模块中的一个函数。 2.2 创建出来的是自定义的tuple对象。 2.3 可以通过属性来访问自定义tuple的某个元素。 2.4 示例: from collections import n...原创 2018-06-22 16:57:59 · 154 阅读 · 0 评论 -
廖雪峰python学习笔记【20】web开发
一、web开发 1. CS架构:Client/Server 1.1 互联网兴起,而Web应用程序的修改和升级非常快。 2. BS架构:Browser/Server 2.1 静态Web页面 2.2 CGI: Common Gateway Interface。用C/C++编写。 2.3 ASP/JSP/PHP:...原创 2018-07-19 11:28:48 · 224 阅读 · 0 评论 -
廖雪峰python学习笔记【21】异步IO
一、异步IO CPU的运行速度远大于磁盘,网络等IO操作。 同步IO:CPU发出IO请求,等待IO处理完成,继续进行其他处理。 异步IO:CPU发出IO请求,不等待IO处理结果,继续进行其他处理;当IO处理完成通知CPU时,CPU再去处理IO结果。 解决同步IO的问题,还可以使用多进程和多线程模型。此时会额外带来线程切换的开销。 二、协程(coroutine...原创 2018-08-22 16:44:05 · 265 阅读 · 0 评论