原型模式,也是用于创建对象时的一种设计方法。主要应用场景是:每次初始化某个对象时,需要传递大量的参数,很不方便,此时,可以使用原型模式,在已经创建并初始化的对象基础上,可以快速而又方便创建新的不同对象。主要原理:使用深拷贝,复制一个已创建的对象,然后使用__dict__.update()方法更新已创建对象中的参数值方式创建新对象。背景知识:在python中的类中,__dict__是一个字典,保存了所有该类中的变量,函数等参数。#coding=utf-8im
系统 2019-09-27 17:52:15 1714
进程、线程和协程进程的定义:进程,是计算机中已运行程序的实体。程序本身只是指令、数据及其组织形式的描述,进程才是程序的真正运行实例。线程的定义:操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。进程和线程的关系:一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。CPU的最小调度单元是线程不是进程,所以单进程多线程也可以利用多核CPU.协程的定义:协程通过在线程中实现调度,避免了陷
系统 2019-09-27 17:52:14 1714
经典的汉诺塔问题:这里我们可以利用递归的思想去做,递归中重要的三步,我们逐条来实现:1、函数+分支结构2、递归链条3、递归基例函数+分支结构:defhanoi(n,start,end,mid):globalcountif:else:这里我们可以定义一个函数,里面的参数有:一共有n个圆盘,从start柱子移到end柱子,中间柱子为mid。这里定义一个全局变量来计算移动的步骤数,若为局部变量,会在函数内部不断初始化,所以需要定义全局变量。递归基例:ifn==1
系统 2019-09-27 17:52:07 1714
最近在工作中遇到一个问题,就是有一个功能希望在各种服务器上实现,而服务器上的系统版本可能都不一样,有的是CentOS6.x,有的是CentOS7.x。需要说明的一点是,CentOS6.x上的Python版本是2.6.x的,而CentOS7.x上的Python版本是2.7.x的,这意味着我要实现的功能要适配这两种版本的系统。你可能会说,这有什么的,自己写的时候,注意一下就好了。事情其实没有那么容易,我要实现的功能是基于一个框架进行定制,需要修改不少的框架代码
系统 2019-09-27 17:51:50 1714
现在互联网巨头,都已经转投到人工智能领域,而人工智能的首选编程语言就是python,未来前景显而易见。那么问题来了,想学Python,Python工程师工资一般多少?值得去学吗?说句实在话,还得看你自己:自己足够用功,经验够,两三万月薪也不是不可能;如果资历浅,又不用功,想要高薪,除非运气够好!学习Python可以从事以下工作:一、人工智能Python作为人工智能的黄金语言,选择人工智能作为就业方向是理所当然的,而且就业前景好,薪资普遍较高,拉勾网上,人工
系统 2019-09-27 17:51:49 1714
完全转自https://blog.csdn.net/beijiu5854/article/details/77897767,但是经过自己的测试。转载自http://blog.csdn.net/u013894834/article/details/75305752Ubuntu16.04下完美切换Python版本(亲测)对于ubuntu16.04,由于本身是自带python,这样就减少了在windows下的下载和环境变量配置,非常不错。但是他本身是自带两个版本
系统 2019-09-27 17:51:41 1714
通过纯Python完成股票回测框架的搭建。什么是回测框架?无论是传统股票交易还是量化交易,无法避免的一个问题是我们需要检验自己的交易策略是否可行,而最简单的方式就是利用历史数据检验交易策略,而回测框架就是提供这样的一个平台让交易策略在历史数据中不断交易,最终生成最终结果,通过查看结果的策略收益,年化收益,最大回测等用以评估交易策略的可行性。代码地址在最后。本项目并不是一个已完善的项目,还在不断的完善。回测框架回测框架应该至少包含两个部分,回测类,交易类.回
系统 2019-09-27 17:51:37 1714
目录python编程语言简介一、产生背景:二、python编程语言的应用场景三、python的优缺点四、python语法五、python基础内容点六、代码规范:python编程语言简介Python是著名的“龟叔”GuidovanRossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。Python是一门面向对象的解释型脚本编程语言Python是一门高级编程语言,但是高级不等同于简单。但是对于新手和初学者,非常容易上手Python语言是当
系统 2019-09-27 17:51:23 1714
1准备工作1.1环境搭建1.1.1安装python3.6python安装官网1.1.2安装django2.2pipinstalldjango(==2.2.0)//不加版本默认安装最新版1.1.3安装pycharm(社区版,官网下载安装即可)在安装完成后要配置好需要的第三方库:(pip下载,推荐在pycharm下也配置虚拟环境)Django2.2连接mysql需要的库:PyMySQL,mysql,mysqlclinet验证码用到的库:django-simpl
系统 2019-09-27 17:51:19 1714
一、计算机结构五大部件:输入设备、输出设备、存储器、运算器、控制器二、cpu、硬盘、内存三者之间的关系cpu:是计算机运算核心和控制中心,让电脑的各个部件顺利工作,起到协调和控制作用硬盘:存储资料和软件等数据设备,有容量大,断电数据不丢失的特点,也被人们称之为“数据仓库”内存:a、负责硬盘等硬件上的数据与cpu之间的数据交换处理。b、缓存系统中的临时数据。c、断电后数据丢失三、变量的命名规则:1、要具有描述性2、变量名只能_、数字、字母组成,不能有空格或特
系统 2019-09-27 17:51:18 1714