随笔分类 - Python全栈开发
摘要:类是一个对象也可以像函数一样加装饰器 类的装饰器.py 本装饰器就是把类作为实参传递给函数deco然后把返回值赋值给Foo,在装饰器函数里面可以定义对应类的属性 以上装饰器虽然在装饰器里面实现了对类属性进行赋值但是把赋值写死了 下面通过嵌套把装饰器写的灵活 类的装饰器2.py 类的装饰器的应用.py
阅读全文
摘要:描述符的使用 python是弱类型语言,及参数的赋值没有类型限制,下面通过描述符机制来实现类型限制功能 描述符应用1.py 以上只是测试是否调用了描述符,但是对应的__get__,__set__,__delete__只是执行了打印操作没有进行返回值,设置值,删除值的操作所以只有打印输出 PS:根据优
阅读全文
摘要:我们知道在操作文件对象的时候可以这么写 上述叫做上下文管理协议,即with语句,为了让一个对象兼容with语句,必须在这个对象的类中声明__enter__和__exit__方法 上下文管理协议.py 正常是在with Open的时候执行__enter__然后执行with下面代码,如果执行代码没有出错
阅读全文
摘要:参考 http://www.cnblogs.com/linhaifeng/articles/6204014.html 1,什么是反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力(自省)。这一概念的提出很快引发了计算机科学领域关于应用反射
阅读全文
摘要:角色:学校,学员,课程,讲师 要求: 1,创建北京,上海2所学校 2,创建linux,python,go3个课程,linux\py在北京开,go在上海开 3,课程包含,周期,价格,通过学校创建课程 4,通过学校创建班级,班级关联课程,讲师 5,创建学员时,选择学校,关联班级 6,创建讲师角色时关联学
阅读全文
摘要:面向对象作业 作业_定义学校老师课程班级学生类.py
阅读全文
摘要:参考文档: http://www.cnblogs.com/linhaifeng/articles/6182264.html# 类:把一类事物的相同的特征和动作整合到一起就是类,类是抽象的概练 对象:就是基于类而创建的具体存在的,也是特征和动作整合到一起 一,面向对象设计过程 现实世界中先有对象有了明
阅读全文
摘要:一,需求分析 要求计算一串包含数字+-*/()的类似于3*( 4+ 50 )-(( 100 + 40 )*5/2- 3*2* 2/4+9)*((( 3 + 4)-4)-4)表达式的数值 二,知识点 正则表达式 元素切片 函数 函数递归 三,流程分析 流程图如下 四,实现过程 1,正则表达式处理用户输
阅读全文
摘要:正常写python程序会有一个可执行的bin.py文件,假如这个文件需要导入my_module里面定义的模块,应该怎么设置sys.path 文件夹目录结构如下,因为bin不在与my_module同级目录下,而是在bin目录下,如果直接使用from my_module import main调用模块肯
阅读全文
摘要:一,python的模块 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。 模块让你能够有逻辑地组织你的 Python 代码段。 把相关的代码分配到一个模块里能让你的代码更好用,更易懂。 模块能定义函数,类和变量,模块
阅读全文
摘要:针对上一篇对文件的操作程序,执行一次操作的函数查询,添加,修改,删除都需要在函数里面定义文件处理的过程,整体函数看起来比较乱,代码重复过多 下面新定义一个函数专门用于处理文件操作,然后在不同的函数里面调用该函数 这种方法称为解耦 day21-2.py
阅读全文
摘要:需求,有一个配置文件test.conf内容如下 1,自定义函数实现查询功能,查询需要根据用户输入的关键字进行查询如输入www1则查询出对应的下面的配置 2,自定义函数实现添加功能,比如在关键字www1后面添加一个配置为server 3 3,自定义函数实现修改功能,比如把server 1修改成 ser
阅读全文
摘要:1,打开软件点击help-Register 2,输入地址http://xidea.online激活
阅读全文
摘要:补充:解压序列 需求一,不通过索引取一个列表的第一个元素和最后一个元素 需求二,交换两个变量的值
阅读全文
摘要:一,什么是装饰器 装饰器:本质就是函数,功能是为其他函数添加附加功能 原则 1,不修改被修饰函数的源代码 2,不修改被修饰函数的调用方式 举例说明:有一个求和函数要求就算出函数的运行时间 正常代码应该这样day20-1.py 假如有多个函数都需要这种统计时间的功能,遵循开放封闭的原则不能修改函数源代
阅读全文
摘要:一,深浅拷贝 看拷贝列子day19-1.py 假如修改的元素是一个列表,源列表也会发生变化day19-2.py 为什么会这样,因为第一次修改的是一个不可变元素对应的指针发生了变化,第二次s和s3指向的内存地址是一个可变的元素(列表)当列表发生改变,但是列表的内存地址没有改变s和s3的指向没有发生改变
阅读全文
摘要:一,什么是生成器 可以理解为一种数据类型,这种数据类型自动实现了迭代器协议(其他数据类型需要调用自己内置的__iter__方法),所以生成器是可迭代对象。 二,生成器分类在python中的表现形式 1,生成器函数:常规函数定义,但是,使用yield语句而不是return语句返回结果。yield语句一
阅读全文
摘要:一,什么是迭代和递归 递归和迭代都是循环的一种。 简单地说,递归是重复调用函数自身实现循环。迭代是函数内某段代码实现循环,而迭代与普通循环的区别是:循环代码中参与运算的变量同时是保存结果的变量,当前保存的结果作为下一次循环计算的初始值。 二,什么是迭代器协议 1.迭代器协议是指:对象必须提供一个ne
阅读全文
摘要:需求:假设Python没有提供内置函数int如果使用函数方式实现把一串字符串转换成整数例如把字符串‘12345‘转换成整数12345 思路 1,字符串也是序列可以使用map函数处理分割成一个列表 2,使用reduce函数处理生成的列表计算出最终转换的整数结果
阅读全文
摘要:一,文件处理流程 二,文件打开模式 三,文件操作实例 1.r读 read读取文件所有内容 vim day17-2.py 文件a为一段文本 readline一行行读取文件内容vim day17-3.py readline是一行行读取,读取到最后一行以后再往下读取则为空 readable查看是否可读取,
阅读全文