一.shutil 模块 1.shutil.copyfileobj(fsrc, fdst[, length]) 将文件内容拷贝到另一个文件中,需要打开文件 import shutil shutil.copyfileobj(open("old_test.txt","r"),open("new_test.txt","w")) 输出结果 2.shutil.copyfile(src,dst) 复制文件内容到另外一个文件,不需要打开文件,…
一.类的装饰器 类作为一个对象,也可以被装饰. 例子 def wrap(obj): print("装饰器-----") obj.x = 1 obj.y = 3 obj.z = 5 return obj ​ @wrap #将Foo类作为一个参数传入装饰器函数wrap,返回同时返回该对象,把新对象重新命名为Foo #即 Foo = wrap(Foo) class Foo: pass ​ #执行结果: #装饰器----- ​ print(Foo.__dict__) #输出结果可以看到,新的F…
Python之路[第八篇]:堡垒机实例以及数据库操作   堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: + import paramiko transport = paramiko.Transport(('hostname', 22)) transport.connect(username='wupeiqi', password='123') s…
阅读目录 一.模块和包 模块(module)的概念: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Python中,一个.py文件就称之为一个模块(module). 使用模块有哪些好处? 1.最大的好处就是大大提高了代码的可维护性. 2.编写代码不必从零开始.当一个模块编写完成,就可以被其他地方调用.我们在编…
一.sys模块 1.sys.argv 命令行参数List,第一个元素是程序本身路径 2.sys.exit(n) 退出程序,正常退出时exit(0) 3.sys.version . sys.maxint sys.version 获取Python解释程序的版本信息 sys.maxint 最大的Int值 4.sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 分析:sys.path输出的第一个结果是程序执行文件所在的文件夹绝对路径,这里的输出结果第二个是工程文件目录,但…
一.程序解耦 解耦总的一句话来说,减少依赖,抽象业务和逻辑,让各个功能实现独立. 直观理解“解耦”,就是我可以替换某个模块,对原来系统的功能不造成影响.是两个东西原来互相影响,现在让他们独立发展:核心思想还是最小职责,每个地方都只做一件事情:只要一个地方负责了多项事情,就存在解耦的可能.在系统每个层次都可以体现解耦的思想,比如在架构层面把存储和业务逻辑解耦,把动态页面和静态页面解耦:在模块层面把业务模块和统计模块解耦:在代码层面把多个功能解耦等等. 低耦合,高内聚---模块之间低耦合,模块内部高…
1.视图函数 文件在view_demo 一个视图函数简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . . 是任何东西都可以.无论视图本身包含什么逻辑,都要返回响应.代码写在哪里也无所谓,只要它在你的Python目录下面.除此之外没有更多的要求了——可以说“没有什么神奇的地方”.为了将代码放在某处,约定是将视图放置在项目或应用程序目录中的名为views.py的文件中. 视图…
一.简介 Python下有许多款不同的 Web 框架,Django 是重量级选手中最有代表性的一位,许多成功的网站和APP都基于 Django. Django 是一个开放源代码的Web应用框架,由 Python 编写. Django 遵守 BSD 版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 . Django 采用了 MVC 的软件设计模式,即模型 M,视图 V和控制器 C. 二.安装 在安装 Django 前,系统需要已经安装了 Python 的开发环境.接下…
阅读目录 一 面向对象的程序设计的由来二 什么是面向对象的程序设计及为什么要有它三 类和对象3.1 什么是对象,什么是类3.2 类相关知识3.3 对象相关知识3.4 对象之间的交互3.5 类名称空间与对象/实例名称空间3.6 小结四 继承与派生4.1 什么是继承4.2 什么是派生4.3 继承与抽象(先抽象再继承)4.4 继承与重用性4.5 组合与重用性4.6 接口与归一化设计4.7 抽象类4.8 继承实现的原理(继承顺序)4.9 子类中调用父类方法五 多态与多态性5.1 多态5.2 多态性六 封…
本节内容 JavaScript 正则表达式 Django初识 正则表达式 1.定义正则表达式 /.../  用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m 表示多行匹配 JS正则匹配时本身就是支持多行,此处多行匹配只是影响正则表达式^和$,m模式也会使用^$来匹配换行的内容) var pattern = /^Java\w*/gm; var text = "JavaScript is more fun than \nJavaEE or JavaBean…