自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 shell脚本启动、关闭服务

shell脚本启动、关闭服务JAVA_APP_PATH_WF=/opt/module/wk-source-wf.jarJAVA_APP_PATH_REGISTER=/opt/module/wk-register.jarPYTHON_APP_PATH=/root/main.py# 使用说明,用来提示输入参数usage() { echo "Usage: sh 执行脚本.sh [start|stop]" exit 1}# ---------------------- 回传引擎

2021-02-23 13:50:26 1342 1

原创 OKEX api v3 SDK Python实现

#!/usr/bin/python# -*- coding: utf-8 -*-import json, datetime, hmac, base64, zlib, threading, requests, timefrom common.Common import Commonfrom common.WebSocketProtocol import WebSocketProtocolfrom retrying import retryCONTENT_TYPE = 'Content-Type

2020-05-12 15:38:05 1987 3

原创 OKEX WebsocketApi v1 SDK Python实现

import hashlibimport jsonimport timeimport zlibimport websocketfrom basesite.backend.strategy import BreakStrategyfrom basesite.utils.okexutils.okex import OkExclass OkexWebSocket(websocket.WebSocketApp): url = "wss://real.okex.com:10440/ws/

2020-05-12 14:44:24 517 1

原创 OKEX api v1 SDK Python实现

# !/usr/bin/python# -*- coding: utf-8 -*-import hashlibimport jsonimport randomimport urllib.requestimport requestsdef get2(url): print(url) try: opener = urllib.request.build_opener() opener.addheaders = [('User-Agent', '

2020-05-12 13:46:29 723

原创 Python (Flask) 解决多进程(线程)并发操作redis 人为加锁(装饰器和非装饰器版)

import osfrom flask_apscheduler import APSchedulerfrom flask_script import Managerfrom redis import ConnectionPoolfrom app import create_app# app = create_app(os.environ.get('futures') or 'def...

2020-04-22 17:32:56 3797

原创 基于Python3的事件驱动引擎实现及原理

"""事件驱动引擎实现: 1.初始化一个队列 用来保存事件对象 2.建两个线程: 一个用来创建事件存入队列 一个用来从队列中读取事件执行事件(执行事件的方法即注册的监听函数)"""# 系统模块from queue import Queue, Emptyfrom threading import Threadfrom time impor...

2019-08-16 14:30:31 2010 1

原创 Python 抽象类的实现

import abcclass AbstractClass(abc.ABC): @abc.abstractmethod def show(self): passclass ChildClass(AbstractClass): """ AbstractClass是一个抽象类 继承它的子类必须要重写抽象方法 """ def show(se...

2019-08-16 09:56:08 566

原创 Python 多进程实现

第一种方式:from multiprocessing import Processdef run(): print("start...") for i in range(10000000): x = i * i print("end...")p1 = Process(target=run)p2 = Process(target=run)p3...

2019-08-15 17:31:09 458

原创 Python 协程用法demo

个人认为: 协程是在单个线程中轮换执行多个函数import asyncioasync def my_loop(): # 1.asyncio.sleep() 模拟io任务, 这样休眠不会阻塞事件循环; 前面加await后会吧控制权交于主事件循环, 在休眠(IO操作)结束后回复这个协程 # 2.若在协程中需要有延时操作, 应使用await asyncio.sleep(),...

2019-08-12 16:53:18 832

原创 Python 多线程实际应用

import threadingfrom basesite.backend.strategy.websocket_break_double_position_strategy import BreakStrategyfrom basesite.utils.okexutils.OkexWebsocket import run_websocketfrom basesite.utils.okex...

2019-08-09 17:26:06 885

原创 windows 常用bat

1.启动flask项目```@echo offcall activate flaskcd /d D:\software\Pycharm\workspace\svn_project\futures_hedgingstart python manage.py runserver -p 9999 --threadedstart "" cmd /k call hedging_auto_...

2019-05-28 15:51:42 520

原创 PyCtp的一些常见问题

CTP报单状态https://www.cnblogs.com/puray/p/4081486.htmlpyctp接口封装http://www.shizhuolin.com/2015/11/07/1120.htmlCTP交易部分接口说明https://www.cnblogs.com/dengchj/p/8442913.htmlCTP综合交易平台 下单字段分析https://blog.c...

2019-05-27 13:35:48 832

原创 flask model层之通用的base_model

from basesite.exc import dbSUCCESS = 1FAILURE = 0class BaseModel: def save(self): try: db.session.add(self) db.session.commit() except Exception as e...

2019-05-27 11:03:59 1237

原创 anaconda 的一些常用命令

conda --version (-V) // 查看当前conda的版本conda update conda // 升级当前版本的condaconda create --name name python=3.6 // 创建一个python版本为3.6的虚拟环境activate env_name // 进入环境deactivate // 退出当前环境conda e...

2019-05-27 10:47:17 550

原创 flask-sqlalchemy事务简单处理

from functools import wrapsfrom contextlib import ContextDecorator'''示例程序:创建一个新用户,同时将新用户关联到一家公司下,这需要两步数据库操作,但是这应该是一个事务,要么都完成,要么都未完成注意:即使只有一步,也需要如下操作flush和commit区别: > flush: 写数据库,但不提交,也...

2019-05-16 18:18:47 4913

原创 Python实现基本的排序算法

list1 = [12, 25, 33, 85, 9, 45]# 冒泡排序for i in range(len(list1)-1): for j in range(len(list1)-1-i): if list1[j] > list1[j+1]: list1[j], list1[j+1] = list1[j+1], list1[j]pr...

2018-10-15 21:57:18 2714

原创 Vim中的一些常用操作

跳转到文件的最后一行,或跳转至文件首行# 第一种方式:$ 跳转到最后一行:1 跳转到第一行# 第二种方式shift+g 跳转到最后一行gg 跳转到第一行进入/ 退出编辑模式i/ esc退出当前vim:q # 退出:q! # 强制退出:wq # 保存修改的内容并退出:wq! # 保存修改的内容并强制退出搜索并定位到内容所在区域/要搜索的内容# 按enter键定...

2018-10-11 15:13:40 2712

原创 MySQL之视图

当涉及到数据量过大,业务逻辑需要经常跨表查询时可建立一个跨表的视图,不过视图有一个坏处就是没法建索引而且查询的时候也不会调用原有表的索引,故查询速度可能会慢,有利有弊,用者自行判断。创建(或修改)视图CREATE OR REPLACE VIEW 视图名 AS SELECT [...] FROM [...];一般比较常用的就是两种情况一、基于同一数据库这种情况较为简单,只需简单的...

2018-10-08 12:17:16 2760

原创 Python json文件与csv文件的相互转换

'''json格式示例{ "firstName":"Bill" , "lastName":"Gates" },{ "firstNa

2018-10-05 21:01:33 9413 5

原创 Python操作文件读写

import csvfrom pdfminer.converter import PDFPageAggregatorfrom pdfminer.layout import LAParamsfrom pdfminer.pdfparser import PDFParser, PDFDocumentfrom pdfminer.pdfinterp import PDFResourceManage...

2018-10-04 22:26:56 2774

原创 Python高阶函数

高阶函数:函数a以函数b作为参数并返回bmap()"""map(function, Iterator)function:函数Iterator:序列(列表)功能:将传入的参数依次作用于序列中的每一个元素,并把结果作为新的Iterator返回"""list = map(lambda x:x**2, [1, 2, 3, 4])# [1, 4, 9, 16]reduce()'''...

2018-10-04 11:17:08 2779

原创 Python定时任务模块——schedule

import scheduleimport time def show(name): print("%s is showing" % name) name = 'wohucanglong'# 每隔十分钟执行一次schedule.every(10).minutes.do(show, name)# 每隔一小时执行一次schedule.every().hour.do(show,...

2018-09-30 10:03:49 3406

原创 Python中的深浅拷贝

浅拷贝:copy:只拷贝表层元素list1=list2一改皆改,引用的同一块内存空间list1 = list2.copy()from copy import copylist1 = copy(list2)list1是将list2中所有除去数据结构的数据的值拷贝了过来,而只讲数据结构的地址拷贝了过来,若存在可变元素则修改list2中的可变元素是会影响list1,否则互不影响a...

2018-09-29 23:06:00 2862

原创 一点Django

Django常用命令开启服务python mange.py runserver迁移python manage.py makemigrationspython manage.py migrate降版本python -m pip install --upgrade pip==9.0.3创建Django工程django-admin startproject xxx创建一个应...

2018-09-29 22:45:43 2720

原创 sublime 快捷键大全

选择类Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本。Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑。举个栗子:快速选中并更改所有相同的变量名、函数名等。Ctrl+L 选中整行,继续操作则继续选择下一行,效果和Shift+↓ 效果一样。Ctrl+Shift+L 先选中多行,再按下快捷键,会在每行行尾插入光标,即可同时编辑这些行。Ctrl+S...

2018-09-29 22:26:34 3007

原创 ubuntu下将本地项目上传到github托管

Github网页新建一个仓库,名为:Django_Study复制项目URL在本地进入项目列表 :Myblog执行命令: git init执行命令: git add .执行命令:git status该命令会把你本地工作区和暂存区的版本进行比较,查 看当前的状 态。我下面的状态是已经把所有文件加入到了 暂存区中,但是还没有 提交到本地历史区。执行命令:git ...

2018-09-27 22:33:22 2825

原创 Ubuntu远端服务器配置项目环境步骤

配置虚拟环境下载virtualenvpip install virtualenv下载virtualenvwrapperpip install virtualenvwrapper创建存放虚拟环境的目录mkdir .virtualenvs查找virtualenvwrapper.sh路径 find / -name virtualenvwrapper.sh /usr/local/...

2018-09-26 22:40:54 2858

原创 Django模型之Meta属性详解

Django模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性。而可用的选项大致包含以下几类abstract这个属性是定义当前的模型是不是一个抽象类。所谓抽象类是不会对应数据库表的。一般我们用它来归纳一些公共属性字段,然后继承它的子类可以继承这些字段。如果abstract = True 这个model就是一个抽象类app_label这个选型只在一种情况下使用,就是你...

2018-09-25 17:38:06 3221

原创 PythonORM——SQLAlchemy

首先通过pip或者easy_install安装SQLAlchemy$ easy_install sqlalchemy然后导入SQLAlchemy,并初始化DBSession# 导入:from sqlalchemy import Column, String, create_enginefrom sqlalchemy.orm import sessionmakerfrom sqlalc...

2018-09-24 18:14:44 2883

原创 Python好用的日志模块

一个比较好用的日志模块——————基于文件大小切分,只保留固定个数日志文件import osimport loggingimport logging.handlersdef init_logger(log_file): dir_path = os.path.dirname(log_file) try: if not os.path.exists(dir_...

2018-09-21 15:13:16 3268

原创 Python标准类型的分类

Python中标准类型基本上可以从三种模型来进行分类:

2018-09-14 12:04:20 2972

原创 Python垃圾收集机制

1.引用计数增加引用计数对象被创建 x = 3.14或另外的别名被创建 y = x或作为参数被传递(新的本地引用) foobar(x)或成为一个容器的对象 myList = [123, x, ‘xyz]减少引用计数一个本地引用离开了其作用范围。比如foobar()函数结束时 对象的别名被显示销毁 del ...

2018-09-14 11:53:09 2875

原创 Python中函数和方法的区别

函数(FunctionType)函数是封装了一些独立的功能,可以直接调用,能将一些数据(参数)传递进去进行处理,然后返回一些数据(返回值),也可以没有返回值。可以直接在模块中进行定义使用。所有传递给函数的数据都是显式传递的。方法(MethodType)方法和函数类似,同样封装了独立的功能,但是方法是只能依靠类或者对象来调用的,表示针对性的操作。方法中的数据self和cls是隐式...

2018-09-13 14:50:29 7739

原创 Python发送邮件实现

一.原生发邮件方法import smtplibfrom email.mime.text import MIMETextdef sendEmail(user, pwd, sender, receiver, content, title): mail_host = "smtp.163.com" message = MIMEText(content, "plain", "ut...

2018-09-12 22:55:58 3813

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除