开发堡垒机之前,先来学习Python的paramiko模块,该模块基于SSH用于连接远程服务器并执行相关操作安装paramiko模块pip3installparamiko基于用户密码方式importparamiko#创建SSH对象ssh=paramiko.SSHClient()#允许连接不在know_hosts文件中的主机ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())#连接服务器ssh.c
系统 2019-09-27 17:45:58 2060
APScheduler(advancededpythonscheduler)是一款Python开发的定时任务工具。文档地址apscheduler.readthedocs.io/en/latest/u…特点:不依赖于Linux系统的crontab系统定时,独立运行可以动态添加新的定时任务,如下单后30分钟内必须支付,否则取消订单,就可以借助此工具(每下一单就要添加此订单的定时任务)对添加的定时任务可以做持久保存1安装pipinstallapscheduler
系统 2019-09-27 17:45:25 2060
素数是编程中经常需要用到的。作为学习Python的示例,下面是一个高效求解一个范围内的素数的程序,不需要使用除法或者求模运算。#coding:utf-8#设置python文件的编码为utf-8,这样就可以写入中文注释defprimeRange(n):myArray=[1forxinrange(n+1)]##列表解析,生成长度为(n+1)的列表,每个数值都为1myArray[0]=0myArray[1]=0startPos=2whilestartPos<=n
系统 2019-09-27 17:45:23 2060
字符串--不可改变的序列如同大多数高级编程语言一样,变长字符串是Python中的基本类型。Python在“后台”分配内存以保存字符串(或其它值),程序员不必为此操心。Python还有一些其它高级语言没有的字符串处理功能。在Python中,字符串是“不可改变的序列”。尽管不能“按位置”修改字符串(如字节组),但程序可以引用字符串的元素或子序列,就象使用任何序列一样。Python使用灵活的“分片”操作来引用子序列,字符片段的格式类似于电子表格中一定范围的行或列
系统 2019-09-27 17:38:37 2060
对于三目运算符(ternaryoperator),python可以用conditionalexpressions来替代如对于x<5?1:0可以用下面的方式来实现1ifx<5else0注:conditionalexpressions是在python2.5之前引入的,所以以上代码仅适用于2.5以及之后的版本对于2.5之前的版本,可以用下面这种形式X<5and1or0对于switch,我们完全可以用dictionary来实现,看下面的例子>>>defswitch
系统 2019-09-27 17:38:18 2060
代码中经常会有变量是否为None的判断,有三种主要的写法:第一种是`ifxisNone`;第二种是`ifnotx:`;第三种是`ifnotxisNone`(这句这样理解更清晰`ifnot(xisNone)`)。如果你觉得这样写没啥区别,那么你可就要小心了,这里面有一个坑。先来看一下代码:>>>x=1>>>notxFalse>>>x=[1]>>>notxFalse>>>x=0>>>notxTrue>>>x=[0]#Youdon'twanttofallinth
系统 2019-09-27 17:38:05 2060
break负责跳出整个循环>>>foriinrange(10):...ifi%2!=0:...break...else:...print(i)...0注意:但是break只能跳出一层循环,如果程序中有两个循环,第二个循环嵌套在第一个循环中,如果第二个循环被break,那么第一个循环会继续执行。Python不支持一次跳出多个循环。continue是跳出本次循环,继续下一次循环。>>>foriinrange(10):...ifi%2!=0:...continu
系统 2019-09-27 17:37:45 2060
映射值属性集合类值属性集合类没有单独的OID和生命周期实体类集合有单独的OID和生命周期set不允许重复属性:name指定集合的属性名table对应的表lazy延迟检索策略inverese有较好的update性能但是不会按照one方来同步更新数据库(要注意)order-by数据库排序方式sort内存排序方式元素:定义外键定义many方的类
系统 2019-08-29 23:52:05 2060
1、获取软件包httpd-2.2.4.tar.gzmysql-6.0.0-alpha.tar.gzphp-5.2.2.tar.gz去相应的官方网站都可以下载到,把它们全部放到/usr/local/src下面.2、安装mysql这三个软件包的安装应该没有先后顺序,但我还是习惯先安装mysql:>tar-zxvfmysql-6.0.0-alpha.tar.gz>cdmysql-6.0.0-alpha>./configure--prefix=/usr/local
系统 2019-08-29 23:46:15 2060
B树、B-树、B+树、B*树都是什么B树即二叉搜索树:1.所有非叶子结点至多拥有两个儿子(Left和Right);2.所有结点存储一个关键字;3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树;如:B树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关键字比结点关键字小,就进入左儿子;如果比结点关键字大,就进入右儿子;如果左儿子或右儿子的指针为空,则报告找不到相应的关键字;如果B树的所有非叶子结点
系统 2019-08-29 23:15:58 2060