搜索到与相关的文章
Python

Python:线程为什么搞个setDaemon

前言使用Python都不会错过线程这个知识,但是每次谈到线程,大家都下意识说GIL全局锁,但其实除了这个老生常谈的话题,还有很多有价值的东西可以探索的,譬如:setDaemon()。线程的使用与存在的问题我们会写这样的代码来启动多线程:importtimeimportthreadingdeftest():whileTrue:printthreading.currentThread()time.sleep(1)if__name__=='__main__':t

系统 2019-09-27 17:54:09 2362

Python

python multiprocessing模块用法及原理介绍

一multiprocessing模块介绍python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu\_count\(\)查看),在python中大部分情况需要使用多进程。Python提供了multiprocessing。multiprocessing模块用来开启子进程,并在子进程中执行我们定制的任务(比如函数),该模块与多线程模块threading的编程接口类似。multiprocessing模块的功能众多:支持子进程、通信和

系统 2019-09-27 17:53:02 2362

Python

用python的matplotlib和numpy库绘制股票K线均线的整合效果

本人最近在尝试着发表“以股票案例入门Python编程语言”系列的文章,在这些文章里,将用Python工具绘制各种股票指标,在讲述各股票指标的含义以及计算方式的同时,验证基于各种指标的交易策略,本文是第一篇,通过K线和均线案例讲述Numpy,Maplotlib等相关库的用法,并且还用代码案例来验证买卖的交易策略。在本系列的后面文章中,将陆续通过python绘制成交量、KDJ、MACD、RSI和OBV等指标,而且还会用Python编写针对这些指标的交易策略,敬

系统 2019-09-27 17:52:26 2362

Python

python 回溯初级练习代码

#回溯练习#给你两个整数n和k,从1-n中选择k个数字的组合。比如n=4,那么从1,2,3,4中选取两个数字的组合,包括图上所述的四种[1,2],[1,3],[2,3],[2,4]。defcombine(n,k):#globalres_listres_list=[]defbacktrack(n,k,start,list_one):ifk==0:res_list.append(list_one[:])#注意,这里必须要[:],为什么,不然都是记录引用,每次L

系统 2019-09-27 17:51:02 2362

Java

C/C++、Java、Go、Python总结对比14-public

java的类中,这3个关键词的用法有所区别,先看一个表格:private大多数成员变量都是修饰符为private的,它们不希望被其他任何外部的类访问。只能被类内部的成员函数访问。default它是针对本包访问而设计的,任何处于本包下的类、接口、异常等,都可以相互访问,即使是父类没有用protected修饰的成员也可以。protected主要的作用就是用来保护子类的。它的含义在于子类可以用它修饰的成员,其他的不可以,它相当于传递给子类的一种继承的东西publ

系统 2019-09-27 17:46:12 2362

Python

使用Python爬取前程无忧上南京地区Python职位以及对应工资

获取原始数据最近在学习Python,做了一个爬虫程序练练手,前程无忧这个网站页面布局还是挺简单的,适合我这种新手。使用requests+bs4爬取不多说了,先来看看页面布局吧。这是前程无忧上的职位列表,看上去还是很清楚的然后再来看看页面布局,使用Google浏览器打开前程无忧网页,然后按下F12每一个class为el的div就代表一个招聘信息然后再来看看div里面是怎么布局的,我们需要获取第二列公司名称以及第四列的薪资,其他的暂时不管。公司名称在el这个d

系统 2019-09-27 17:45:58 2362

Java

java工厂模式

一、引子话说十年前,有一个爆发户,他家有三辆汽车(Benz(奔驰)、Bmw(宝马)、Audi(奥迪)看来这人比较爱国,没有日本车),还雇了司机为他开车。不过,爆发户坐车时总是这样:上Benz车后跟司机说"开奔驰车!",坐上Bmw后他说"开宝马车!",坐上Audi后他说"开奥迪车!"。你一定说:这人有病!直接说开车不就行了?!而当把这个爆发户的行为放到我们程序语言中来,我们发现C语言一直是通过这种方式来坐车的!幸运的是,这种有病的现象在OO语言中可以避免了。

系统 2019-08-29 23:01:33 2362

Java

详解 JAVA 创建对象 NEW

假设我们在函数中写了如下这个简单的语句:StringBufferstr=newStringBuffer("Helloworld");别看这个语句简单,其实包含了如下三个步骤:首先,newStringBuffer("Helloworld")在堆里申请了一坨内存,把创建好的StringBuffer对象放进去。其次,StringBufferstr声明了一个指针。这个指针本身是存储在栈上的(因为语句写在函数中),可以用来指向某个StringBuffer类型的对象。

系统 2019-08-29 22:52:29 2362