python
只待风起
我的孤独是一座花园,我让自己登基,做风的君王。
展开
-
python装饰器详解
装饰器的作用就是在不改变原函数的基础上,动态的扩展函数的功能。装饰器本质就是返回一个函数的高阶函数,那么什么是高阶函数?一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。举个栗子:比如我们现在有一个执行登录的函数login(),但是在登录之前我们需要一个验证函数validate()对用户进行验证。我们可以这么写:def validate(func): print...原创 2018-11-06 18:54:23 · 112 阅读 · 0 评论 -
python3 urllib.request模块学习笔记
urllib库是python3内置的HTTP请求库,包括以下四个模块:urllib.request:请求模块,可以用来模拟发送请求。 urllib.error:异常处理模块 urllib.parse :url解析模块 urllib.robotparser:robots.txt解析模块这篇文章主要记录一下urllib库中request模块的学习笔记。 1. urlopen()方法...原创 2018-11-20 22:05:22 · 321 阅读 · 0 评论 -
python 函数嵌套和nonlocal关键字
python函数可以嵌套使用,使用也比较简单,举个栗子:def outer(): print("outer") def inner(): print("inner") inner()outer()## 运行结果:outerinnernonlocal关键字:与global关键字有点相似,可以对比着理解。nonlocal关键字只能作用域局...原创 2018-11-16 20:55:05 · 9531 阅读 · 0 评论 -
python 命名空间和作用域
二者的关系:命名空间在python解释器中是以字典的形式存在的,是以一种可以看得见摸得着的实体存在的。大部分的命名空间都是由字典来实现的,里面存储的是键就是名字,值就是名字所指向的位于内存中的对象。作用域是python解释器定义的一种规则,该规则确定了运行时变量查找的顺序,是一种形而上的虚的规定。命名空间有三种:1.内置命名空间:里面存放的是python解释器一加载进内存就能直接使用的变量...原创 2018-11-16 20:04:51 · 223 阅读 · 0 评论 -
python 函数传参问题
python 函数的参数传递: 实参为不可变类型:类似 c++ 的值传递,如 数字型、字符串、元组。如fun(a),传递的只是a的值,没有影响a对象本身。比如在 fun(a)内部修改 a 的值,只是修改另一个复制的对象,不会影响 a 本身。 实参为可变类型:类似 c++ 的引用传递,如 列表,字典,集合。如 fun(la),则是将 la引用的对象传过去,修改后fun外部的la...原创 2018-11-15 21:55:27 · 216 阅读 · 0 评论 -
python 文件操作
open() 方法用于打开一个文件,并返回一个文件对象,在对文件进行处理过程都需要使用到这个函数。注意:对文件的操作结束后,一定要记得调用文件对象的close()方法关闭文件。open()方法的完整语法格式:open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=T...原创 2018-11-15 20:21:49 · 82 阅读 · 0 评论 -
python 小数据池
python中数字,字符串存在小数据池,什么是小数据此呢,在一定规则范围内,如果同时定义多个相同值的数字类型或字符串类型变量,他们会共用一个内存地址。可以用 is 验证。小数据池的目的是节省内存空间。数字:范围在 -5~256字符串:1.没有特殊字符。 2. s*20以内,若乘以大于20的数,则不会共用内存地址。>>> num1 ...原创 2018-11-15 16:58:33 · 332 阅读 · 0 评论 -
python 多任务_线程(一)
python提供了两个模块来实现多线程thread 和threading(推荐) ,thread模块提供了基本的线程和锁支持,threading提供的是更高级的完全的线程管理,且更方便操作。在 Python3 中不能再使用"thread" 模块。为了兼容性,Python3 将 thread 重命名为 "_thread"。1.创建多线程 from threading import T...原创 2018-11-13 22:00:08 · 158 阅读 · 0 评论 -
python基础:字符串常用方法
字符串就是一系列字符。在Python中,用引号括起的都是字符串,其中的引号可以是单引号, 也可以是双引号。在字符串中也可以包含引号和撇号。如:'I told my friend, "Python is my favorite language!"'字符串为不可变数据类型,调用字符串的方法,不会改变字符串本身,而是生成一个新的字符串。字符串的常用方法1. 字符串索引:>&...原创 2018-11-05 20:28:13 · 242 阅读 · 0 评论 -
python 可迭代对象,迭代器,生成器
先放一张图来表示以下三者的关系:1.生成器(generator)为了更好的理解生成器,可以先把生成器和列表做一个比较。理论上列表的长度是无限的,但是受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。而使用生成器也可以用来存储100万个元素。只不过生成器内部实...原创 2018-11-07 20:00:17 · 116 阅读 · 0 评论 -
虚拟环境的基本使用(virtualenv,virtualenvwrapper)
前言:为什么要用虚拟环境在实际项目开发中,我们通常会根据自己的需求去下载各种相应的框架库,如falsk,Scrapy等,但是可能每个项目使用的框架库并不一样,或使用框架的版本不一样,这样需要我们根据需求不断的更新或卸载相应的库。直接怼我们的系统级的python环境会给我们的开发环境和项目造成很多不必要的麻烦,管理也相当混乱。虚拟环境很好的解决了这些问题。virtualenv是用来创建...原创 2018-11-08 12:22:46 · 8559 阅读 · 0 评论