随笔分类 - python基础
摘要:一、 __repr__ class Name: def __init__(self,name): self.name = name 123 上面打印类对象并不是很友好,显示的是对象的内存地址 此时我们重构 __repr__ class Name: def __init__(self,name): s
阅读全文
摘要:python如何读写excel 1.安装两个库 pip install xlrd xlwt 读取excel: 2.如何读取excel import xlrd book = xlrd.open_workbook('demo.xlsx') sheet = book.sheet_by_index(0) #
阅读全文
摘要:单例模式 单例模式是一个软件的设计模式,为了保证一个类,无论调用多少次产生的实例对象, 都是指向同一个内存地址,仅仅只有一个实例(对象)! 五种单例: - 模块 - 装饰器 - 元类 - __new__ - 类方法: classmethod 方式一: @classmethod > 通过类方法
阅读全文
摘要:1. 异常 1.1 什么是异常 异常是程序发生错误的信号,程序一旦出错就会抛出异常,程序的运行就终止了 # 异常处理的三个特征 ''' 1、异常的追踪信息 2、异常的类型 3、异常的内容 ''' 1.2 为何要处理异常 为了增强程序的健壮性,即便是程序运行出错了也不要终止程序, 而是因该捕捉异常并处
阅读全文
摘要:1. 反射 1.1 什么是反射 反射的概念主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。也可以说是在程序运行过程中可以"动态(不见棺材不掉泪)"获取对象的信息 python是动态语言,而反射(reflection)机制被视为动态语言的关键。 静态:在定义阶段就确定类型 动态:在调用阶段
阅读全文
摘要:多态 1 什么是多态 : 同一种事物的多种形态(通过继承实现) class Animal: pass class People(Animal): pass class Dog(Animal): pass class Pig(Animal): pass 2 为何要有多态=》多态会带来什么样的特性,多态
阅读全文
摘要:1. 封装 封装是面向对象三大特性最核心的一个特性 封装指的就是把数据与功能都整合到一起,封装<->整合。 针对封装到对象或者类中的属性,严格控制对它们的访问{隐藏与开放接口} 2. 隐藏属性 Python的Class机制采用双下划线开头的方式将属性隐藏起来(设置成私有的),但其实这仅仅
阅读全文
摘要:1、面向对象编程 1.1 面向过程 核心是"过程"二字 过程的终极奥义就是将程序流程化 过程是"流水线",用来分步骤解决问题的 1.2 面向对象 核心是"对象"二字 对象的终极奥义就是将程序"整合",整合也就是对象的精髓 对象是"容器",用来盛放数据与功能的 ''' 程序=数据+功能 学生的容器=学
阅读全文
摘要:1. time模块 1.1 时间的格式 1) 时间戳(timestamp): 从1970年到现在经过的秒数 作用: 用于时间间隔的计算 print(time.time())#1585550344.012155 2) 按照某种格式显示的时间(format string): 作用 : 展
阅读全文
摘要:python内置函数 abs() 获取绝对值 >>> abs(-10) 10 >>> a = -10 >>> a.__abs__() 10 all() 参数为可迭代对象,迭代对象为空时,返回True.如果迭代对象的所有元素都为真,那么返回True,否则返回False. all(['python',1
阅读全文
摘要:模块 1 什么是模块 模块就是一系列功能的集合体,分为三大类 I:内置的模块 II:第三方的模块 III:自定义的模块 一个python文件本身就一个模块,文件名m.py,模块名叫m ps:模块有四种形式 1 使用python编写的.py文件 2 已被编译为共享库或DLL的C或C++扩展 3 把一系
阅读全文
摘要:1. 二分法 1.1 什么是算法 算法是一种高效解决问题的办法 1.2 二分法 # 需求:有一个按照从小到大顺序排列的数字列表 # 需要从该数字列表中找到我们想要的那个一个数字 # 如何做更高效??? nums=[-3,4,7,10,13,21,43,77,89] find_num=10 num
阅读全文
摘要:三元表达式 1 语法风格 条件成立时要返回的值 if 条件 else 条件不成立时要返回的值 x=1 y=2 res=x if x > y else y print(res) res=111111 if 'egon' == 'egon' else 2222222222 print(res) 2 应用
阅读全文
摘要:迭代器 1、什么是迭代器 迭代器指的是迭代取值的工具,迭代是一个重复的过程,每次重复都是基于上一次的结果而继续的,单纯的重复并不是迭代 2、为何要有迭代器 迭代器是用来迭代取值的工具,而涉及到把多个值循环取出来的类型有: 列表、字符串、元组、字典 、集合、打开文件 l=['egon','
阅读全文
摘要:1. 储备知识 1.1 *args, **kwargs def index(x,y): print(x,y) def wrapper(*args,**kwargs): index(*args,**kwargs) # # index(y=222,x=111) wrapper(y=222,x=111)
阅读全文
摘要:1、函数对象 精髓:可以把函数当成变量去用,函数名存的是内存地址 # func=内存地址 def func(): print('from func') 1.1 函数对象可以赋值 f=func print(f,func) f() 1.2 可以当做参数传给另外一个函数 def foo(x): # x =
阅读全文
摘要:名称空间(namespace) 名称空间是对栈区的划分,存放名字的地方.有了名称空间之后,就可以在栈区中存放相同的名字 1 内置名称空间 存放的名字: 存放的python解释器内置的名字 存活周期: python解释器启动则产生,python解释器关闭则销毁 >>> print
阅读全文
摘要:函数 什么是函数 函数就相当于具备某一功能的工具 函数的使用必须遵循一个原则: 先定义 后调用 ''' def 函数名(参数1,参数2,...): """文档描述""" 函数体 return 值 ''' 为何要用函数 1、组织结构不清晰,可读性差 2、代码冗余 3、可维护
阅读全文
摘要:1. 文件处理 1.1、什么是文件 文件是操作系统提供给用户/应用程序操作硬盘的一种虚拟的概念/接口 1.2、为何要用文件 用户/应用程序可以通过文件将数据永久保存的硬盘中 即操作文件就是操作硬盘 用户/应用程序直接操作的是文件,对文件进行的所有的操作,都是 在向操作系统发送系统调用,然
阅读全文
摘要:字符编码 1 为什么要有字符编码 x="上" 内存 上 翻译 》0101010 上《 翻译《 0101010 2 什么是字符编码 字符编码表就是一张字符与数字对应关系的表 3 字符编码的形成的过程 ASCII表: 1、只支持英文字符串 2、采用8位二进制数对应一个英文字符串 GBK表: 1、支持英文
阅读全文