随笔分类 - Python基础
摘要:常规类型判断 # 【字符串】类型判断 isinstance("s", str) # 【浮点数】类型判断 isinstance(3.14, float) # 【整数型】类型判断 isinstance(66, int) # 【布尔】类型判断 isinstance(True, bool) # 【列表】类型
阅读全文
摘要:进程 进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程是一种抽象的概念,从来没有统一的标准定义。进程一般由程序、数据集合和进程控制块三部分组成。程序用于描述进程要完成的功能,是控制进程执行的指令集;数据集合是程
阅读全文
摘要:魔法属性 __doc__ 获取类或方法的描述信息 class Foo: """ 类对象__doc__的属性值""" def func(self): """ 类方法的__doc__属性值 """ pass foo = Foo() print("类对象的__doc__:", Foo.__doc__) p
阅读全文
摘要:__import__() 语法 __import__(name[, globals[, locals[, fromlist[, level]]]]) 参数 name:字符串,模块的路径id 说明 1. 函数功能用于动态的导入模块,主要用于反射或者延迟加载模块。 2. __import__(A)相当于
阅读全文
摘要:ORM概念 ORM(Object Ralational Mapping,对象关系映射)用来把对象模型表示的对象映射到基于 SQL 的关系模型数据库结构中去。这样,我们在具体的操作实体对象的时候,就不需要再去和复杂的 SQL 语句打交道,只需简单的操作实体对象的属性和方法。 一个句话理解就是:创建一个
阅读全文
摘要:什么是元类 我们知道,实例对象是由类创建的,那么类又是由什么创建的呢? 答案就是元类。 元类基本不会用到,但是就算不用,也应该去熟悉一下概念。 理解类也是对象 在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。在Python中这一点仍然成立: class ObjectCreator(o
阅读全文
摘要:在python中,函数会创建一个自己的作用域,也称为为命名空间。当我们在函数内部访问某个变量时,函数会优先在自己的命名空间中寻找。 我们自己定义的全局变量均在python内建的globals()函数中,以字典的形式保存。而locals()函数返回的是函数内部本地作用域中的变量名称字典。 查看全局变量
阅读全文
摘要:讲 Python 装饰器前,我想先举个例子,虽有点污,但跟装饰器这个话题很贴切。 每个人都穿的内裤主要功能是用来遮羞,但是到了冬天它没法为我们防风御寒,咋办?我们想到的一个办法就是把内裤改造一下,让它变得更厚更长,这样一来,它不仅有遮羞功能,还能提供保暖,不过有个问题,这个内裤被我们改造成了长裤后,
阅读全文
摘要:闭包并不只是一个python中的概念,在函数式编程语言中应用较为广泛。理解python中的闭包一方面是能够正确的使用闭包,另一方面可以好好体会和思考闭包的设计思想。 1.概念介绍 首先看一下维基上对闭包的解释 在计算机科学中,闭包(英语:Closure),又称词法闭包(Lexical Closure
阅读全文
摘要:浏览器进行http请求的时候,不单单会请求静态资源,还可能需要请求动态页面。 那么什么是静态资源,什么是动态页面呢? 静态资源 : 例如html文件、图片文件、css、js文件等,都可以算是静态资源 动态页面:当请求例如登陆页面、查询页面、注册页面等可能会变化的页面,则是动态页面。 浏览器请求动态页
阅读全文
摘要:上下文管理器(context manager)是 Python 编程中的重要概念,用于规定某个对象的使用范围。一旦进入或者离开该使用范围,会有特殊操作被调用 (比如为对象分配或者释放内存)。它的语法形式是with...as... 为了确保一些系统资源得以正确释放,我们经常会用到 try ... ex
阅读全文
摘要:在创建实例属性时,如果直接把实例属性暴露出去,虽然写起来简单,但是存在一些风险,比如实例属性可以在外部被修改。 为了限制外部操作,可以通过一个set_score()方法来设置成绩,再通过一个get_score()来获取成绩,在这些方法中还可以增加一些检查操作,比如在get_score中增加获取权限操
阅读全文
摘要:认识类对象、实例对象、类属性、实例属性、类方法、实例方法 类对象:定义的类就是类对象 实例对象:类对象实例化后就是实例对象 类属性:定义在 __init__ 外部的变量 实例属性:定义在__init__内部的带有self.的变量 类方法:定义在类对象中 且 被@classmethod 装饰的方法就是
阅读全文
摘要:*args 和**kwargs作为形参 *args 和**kwargs作为形参被称为不定长参数,用来处理超出必备参数部分的参数。注意:args和kwargs可以修改为其它变量名。 必备参数就是在定义函数时传入的形参,在调用函数时,传入的参数须以正确的顺序传入,传入的数量必须和声明时的一样,不然会出现
阅读全文
摘要:导入模块常见的方式有 import xxx ,from xxx import yyy 或者 from xxx import yyy as a(为导入包(方法)取别名主要用于防止包名与模块中的变量重名,从这里也能看出导入的包名(方法)可以看作是一个变量),不同的导入方式最终都能达到使用模块中某个方法的
阅读全文
摘要:在Python中,可以通过多进程、多线程和多协程来实现多任务。 在多线程的实现过程中,为了避免出现资源竞争问题,可以使用互斥锁来使线程同步(按顺序)执行。 但是,其实Python的CPython(C语言实现的)解释器上有一把GIL锁,也就是说Python的程序是处于一个解释器锁的环境中的。 一、GI
阅读全文
摘要:python对文件的操作通过open()函数来实现,文件操作有两种模式:读、写 一、读 通过对open()函数的mode参数传入"r"值可打开文件,然后使用读的方法读取文件内容,一般有开就有关,所以还需要用close()方法关闭文件,避免产生内存溢出的问题。另外,若读取的文件不存在,则会抛错。 例:
阅读全文
摘要:一、异常的概念&异常处理的目的 程序在运行时,如果 Pyhon解释器 遇到一个错误,会停止程序的执行,并且提示一些错误,这就是异常。 程序开发时,很难将所有的特殊情况都处理的面面俱到,通过异常捕获可以针对突发事情做集中的处理,从而保证程序的稳定性和健壮性 二、处理已捕获的异常 根据捕获的不同异常,分
阅读全文
摘要:一、单例模型简介 代码的设计模式共有25种,不同的应用场景应用不同的设计模式,从而达到简化代码、利于扩展、提高性能等目的。本文简述Python实现的单例模式场景。简而言之,单例模式的应用场景是一个类对象被实例化多次,在这样的场景下应用单例模式可以减少对象重复创建的消耗,从而节约内存。 二、__new
阅读全文
摘要:一、类方法 1.1 概念和语法说明 类方法就是针对类对象定义的方法。在类方法内部可以直接访问类属性或者调用其他的类方法 语法如下: @classmethod def 类方法名(cls): pass 说明: 类方法需要修饰器 @classmethod 来标识,告诉解释器这是一个类方法。 类方法第一个参
阅读全文