bytes数据类型的转码问题:
摘要:bytes("str", "utf-8") 和str.encode("utf-8")是一样的 str(bytes,"utf-8") 和bytes.decode("utf-8")a是一样的
阅读全文
hashlib,logging,configparser模块
摘要:摘要算法的模块 什么是摘要算法呢?摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示)。 摘要算法就是通过摘要函数f()对任意长度的数据data计算出固定长度的摘要digest,目的是为了发现原始数据是否被人篡改过。 摘要算法之所以
阅读全文
面向对象 ---封装
摘要:封装 :把一些属性和方法放到类里 这本身就是一种封装 # 封装 : 把属性和方法藏在类里 我只能在类内部调用,不能再外部使用 【好处】 1. 将变化隔离; 2. 便于使用; 3. 提高复用性; 4. 提高安全性; 【封装原则】 1. 将不需要对外提供的内容都隐藏起来; 2. 把属性都隐藏,提供公共方
阅读全文
面向对象 -----多态
摘要:多态 多态指的是一类事物有多种形态 动物有多种形态:人,狗,猪 文件有多种形态:文本文件,可执行文件 多态性 一 什么是多态动态绑定(在继承的背景下使用时,有时也称为多态性) 多态性是指在不考虑实例类型的情况下使用实例 在面向对象方法中一般是这样表述多态性: 向不同的对象发送同一条消息(!!!obj
阅读全文
面向对象 ---继承
摘要:什么是继承# 面向对象的三大特性之一 —— 继承# 继承 :至少两个类 : 什么 是 什么 的关系,为了避免几个类之间有相同的代码继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 例子: 在开发程序的过程中,如果我们定义了一
阅读全文
面向对象的命名空间与组合
摘要:面向对象的命名空间; #属性:静态属性 (直接和类名关联或者直接定义在class下的变量) # 对象属性 (在类内和self关联,在类外和对象名关联的变量) # 动态属性(函数) #类名操作变量 不管操作可变还是不可变数据类型 都是类中对应的变量发生变化#对象名操作静态变量#引用变量:现在自己的命名
阅读全文
re正则模块
摘要:#13838389438#是数字#11位#以13|15|17|18|16|14# num = input('phone_number : ')# if num.isdigit() and len(num) == 11 and num.startswith('13') or \# num.starts
阅读全文
常用模块:
摘要:collections模块在内置数据类型(dict、list、set、tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter、deque、defaultdict、namedtuple和OrderedDict等。 1.namedtuple: 生成可以使用名字来访问元
阅读全文
模块:
摘要:#什么是模块? python代码的文件#代码的可读性差,且重复的代码多,写代码困难大#将一些复杂的需要重复使用的功能进行归类,分别放到同一个py文件中。# 需要调用的时候直接拿来用就可以了。 实验前先建一个xiaomei.py ,作为一个自定义模块。模块内容如下 # import xiaomei#一
阅读全文
异常处理博客
摘要:异常和错误 1.语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正) 2.逻辑错误(逻辑错误) 什么是异常 异常就是程序运行时发生错误的信号,在python中,错误触发的异常如下 什么是异常? 异常发生之后 异常之后的代码就不执行了 python中的常用异常:Attr
阅读全文
生成器表达式
摘要:列表推导式: 通过列表y得到列表x: y = [1,2,3,4,5,6,7,8]x = [1,4,9,16,25,36,49,64] 一般我们会这么做: x = []for i in y: x.append(i*i)print(x) 列表推导式: y = [1,2,3,4,5,6,7,8] x =
阅读全文
初识面向对象
摘要:了解一些名词:类、对象、实例、实例化 类:具有相同特征的一类事物(人、狗、老虎) 对象/实例:具体的某一个事物(隔壁阿花、楼下旺财) 实例化:类——>对象的过程 在python中,用变量表示特征,用函数表示技能,因而具有相同特征和技能的一类事物就是‘类’,对象是则是这一类事物中具体的一个。 类名有两
阅读全文
内置函数
摘要:作用域相关: 基于字典的形式获取局部变量和全局变量 globals()——获取全局变量的字典 locals()——获取执行本方法所在命名空间内的局部变量的字典 # def func(): # a = 1 # b = 2 # print(locals()) #根据所在的位置不同,打印的内容不同 # print(globals()) #不管在哪儿,打印的内容都一...
阅读全文
递归函数:
摘要:初识递归: 递归的定义——在一个函数里再调用这个函数本身 在一个函数里再调用这个函数本身,这种魔性的使用函数的方式就叫做递归。 递归的最大深度——997 正如你们刚刚看到的,递归函数如果不受到外力的阻止会一直执行下去。但是我们之前已经说过关于函数调用的问题,每一次函数调用都会产生一个属于它自己的名称
阅读全文
函数(迭代器与生成器)
摘要:迭代和可迭代协议 什么叫迭代 现在,我们已经获得了一个新线索,有一个叫做“可迭代的”概念。 首先,我们从报错来分析,好像之所以1234不可以for循环,是因为它不可迭代。那么如果“可迭代”,就应该可以被for循环了。 这个我们知道呀,字符串、列表、元组、字典、集合都可以被for循环,说明他们都是可迭
阅读全文
函数的装饰器
摘要:装饰器的本质:一个闭包函数 装饰器的功能:在不修改原函数及其调用方式的情况下对原函数功能进行扩展 完整的装饰,万能的装饰 装饰器的固定结构: 多个装饰器装饰同一个函数 有些时候,我们也会用到多个装饰器装饰同一个函数的情况。 开放封闭原则 1.对扩展是开放的 为什么要对扩展开放呢? 我们说,任何一个程
阅读全文
函数:(函数的名字,闭包)
摘要:函数名本质上就是函数的内存地址 1.可以被引用 2.可以被当作容器类型的元素 3.可以当作函数的参数和返回值 *不明白?那就记住一句话,就当普通变量用 第一类对象的概念:函数名可以赋值可以作为一个数据结构的元素可以作为一个函数的参数可以作为一个函数的返回值 闭包 闭包函数: 内部函数包含对外部作用域
阅读全文
函数(命名空间,作用域,嵌套)
摘要:在这里我们首先回忆一下python代码运行的时候遇到函数是怎么做的。 从python解释器开始执行之后,就在内存中开辟了一个空间 每当遇到一个变量的时候,就把变量名和值之间的对应关系记录下来。 但是当遇到函数定义的时候解释器只是象征性的将函数名读入内存,表示知道这个函数的存在了,至于函数内部的变量和
阅读全文
函数:(定义,调用,返回值和参数)
摘要:定义:def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":"。 def 是固定的,不能变,必须是连续的def三个字母,不能分开。 空格 为了将def关键字和函数名分开,必须空。 函数名:函数名只能包含字符串、下划线和数字且不能以数字开头。虽然函数名可以随便起,但我们给函数起名字还是要
阅读全文
文件操作
摘要:计算机系统分为:计算机硬件,操作系统,应用程序三部分。 我们用python或其他语言编写的应用程序若想要把数据永久保存下来,必须要保存于硬盘中,这就涉及到应用程序要操作硬件,众所周知,应用程序是无法直接操作硬件的,这就用到了操作系统。操作系统把复杂的硬件操作封装成简单的接口给用户/应用程序使用,其中
阅读全文