自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (2)
  • 收藏
  • 关注

原创 python实现菜单树算法

定义菜单树类结构from functools import reduceclass MenuTree(): def __init__(self, tree, primary_key='id', parent_key='parent_id', label='children', parent_label='parent'): self.tree = tree self.primary_key = primary_key self.parent_k

2022-05-05 16:48:56 505

原创 python实现压缩文件夹

新建ziputil.pyimport osimport zipfiledef write_zip_file(output_path, output_name, *input_path): """ 压缩文件 :param output_path: 输出的路径 :param output_name: 压缩包名称 :param input_path: 压缩的文件夹路径 :return: """ dir = os.path.dirname(ou

2022-05-05 16:34:32 1121

原创 创建基于ubuntu系统并搭建python环境的docker容器

新建requirements.txtflask==2.0.2新建doc/sources.list文件 ,写入ubuntu源配置deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiversedeb http://mirrors

2022-05-05 16:18:58 1433

原创 flask-cli数据库自动生成

pip安装flask-cli最新版本flask-migrate==3.1.0flask==2.0.2flask启动文件配置db = SQLAlchemy()app = Flask('HuiContourAPI')Migrate(app, db, directory=app.config['MIGRATIONS_DIRECTORY'])# 新建src/model/system文件夹,讲模型文件写入到system中from src.model import system数据库命令生成#

2022-05-05 16:07:24 1011

原创 python自动生成入库序列号

模型定义class Sequence(db.Model): __tablename__ = 'sys_sequence' __table_args__ = ({'comment': '序列维护表'}) id = db.Column(db.Integer, autoincrement=True, primary_key=True) create_at = db.Column(db.DateTime, default=func.now(), comment='创建时间')

2022-05-05 15:57:59 908

原创 flask环境变量动态配置

新建environments.pyimport osfrom flask.cli import load_dotenvfrom src.lib.error_code import NotFoundErrorclass Environments(object): def __init__(self, app=None, var_name=None, default_env=None): self.app = app self.var_name = v

2022-05-05 15:47:37 197

原创 flask封装错误类型异常

新建error.py,封装错误异常from flask import jsonfrom werkzeug.exceptions import HTTPExceptionclass APIException(HTTPException): status = 500 # 错误状态码500服务器产生一个未知的错误 msg = "操作异常" code = -1 # 错误代码,未知错误 # 设置构造函数,改变默认值 # headers是HTTP的头信息

2022-05-05 15:39:39 554

原创 pyhton封装http接口工具

新建http_lib.pyimport urllib.requestfrom flask import current_appclass HttpLib(object): @classmethod def _http_get(cls, url, headers={}): from urllib import error req = urllib.request.Request(url=url, headers=headers) try:

2022-05-05 15:31:35 508

原创 flask集成celery

flask启动文件app.pyfrom flask_celery import celeryapp = Flask('celery') app.config.from_json('config.json')celery.init_app(app)flask_celery文件from celery import Celeryclass FlaskCelery(Celery): def __init__(self, *args, **kwargs): super(F

2022-05-05 15:00:42 398 1

原创 python将医学dcm文件数据信息转换为excel文件

预备dcm数据集

2022-04-26 10:55:03 922

原创 python实现生产者和消费者模型

import threadingimport timefrom queue import Queuefrom threading import Threadmutex = threading.Lock()queue = Queue()data = []def produce(i): for i in range(i): queue.put_nowait((time.time(), [1, 2, 3]))def consume(): while Tru

2021-09-29 09:14:25 191

原创 ubuntu 设置开机启动脚本

cd /etc/systemd/systemvim rc-local.service[Unit] Description=/etc/rc.local Compatibility ConditionPathExists=/etc/rc.local After=mysql.service ssh.service[Service] Type=forking ExecStart=/etc/rc.local start TimeoutSec=0 StandardOutput=tty Rema

2021-09-03 16:44:58 282

原创 python实现数组键值排序

from functools import cmp_to_keydata = [ { 'name': '云平台', 'value': 23 }, { 'name': '数据平台', 'value': 65 }, { 'name': '教育平台', 'value': 2 }]def compare(row1, row2): """ :pa

2021-06-22 18:12:25 382

原创 python实现拖拽排序

Pythondef change_intro_case(**kwargs): cur_id=kwargs.get('cur_id') next_id=kwargs.get('next_id') if cur_id==next_id: return cur_obj=Person.objects.get(pk=cur_id) next_obj=Person.objects.get(pk=next_id) if cur_obj.order >next_obj.order: # 上移

2021-06-10 10:35:51 513

原创 java实现访问接口限制次数

controllerimport com.example.springbootdemo.annotation.RateLimiter;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controller

2021-05-19 18:20:36 2338 1

原创 python迭代器进阶

迭代器分片import itertoolsclass BatchIterator: def __init__(self, wrapped, patch=pow(2, 1)): self.wrapped = wrapped self.patch = patch def __iter__(self): return Next(self.wrapped, self.patch)class Next(BatchIterator):

2021-03-15 18:16:25 128

原创 openpyxl处理excel封装

from openpyxl import load_workbookfrom openpyxl.styles import Fontfrom openpyxl.styles.colors import BLACKclass ParseExcel(object): """解析excel文件""" def __init__(self, filename, sheet_name=''): """ excel读取和写入 :param fil

2021-03-07 09:51:38 1146

原创 docker部署nginx入门指南

文章目录前言一、系统环境二、安装docker前准备1.更新yum源2.安装所需安装包3.设置yum源三、安装docker1.安装docker1.查看docker版本2.启动docker3.查看docker运行状态4.重启docker5.拉取nginx镜像4. 启动docker镜像5.拷贝容器配置6. 移除容器7.挂载容器配置8.访问nginx服务前言Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。一、系统

2021-02-27 17:09:19 2205 1

原创 mysql中排序将非null前排并升序

1.默认排序,会将null值排在首位select * from studentorder by age2.null值后排select * from studentorder by ISNULL(age)3.null值后排,非null升序select * from studentorder by ISNULL(age), age

2021-02-25 18:24:20 2607 1

原创 js实现密码强校验规则

密码校验规则如下passwordValidator(password){ retrun new Promise((rosolve,reject)=>{ if(password===''){ return reject(new Error('密码长度在6~16位')) } // 密码包含数字和字母 const reg1=/^(?=.*[0-9])(?=.*[a-zA-Z])(.{6,16})$/ // 密码包含符号 const reg2=/[`~!@#$%^&am.

2021-02-23 18:59:06 1159

原创 python实现网段划分

在计算机网络中,常常被子网划分所困扰,如下面这个例子,譬如将130.34.12.64划分成4个子网,通过计算得知每个子网划分16个,则得出:(‘130.34.12.64’, ‘130.34.12.79’), (‘130.34.12.80’, ‘130.34.12.95’), (‘130.34.12.96’, ‘130.34.12.111’), (‘130.34.12.112’, ‘130.34.12.127’),共4个子网。接下来通过算法计算出这个结果class Solution(object):

2021-02-22 18:32:18 2397

原创 django发送邮件

配置EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'EMAIL_USE_TLS = False # 是否使用TLS安全传输协议(用于在两个通信应用程序之间提供保密性和数据完整性。)EMAIL_USE_SSL = False # 是否使用SSL加密,qq企业邮箱要求使用EMAIL_HOST = 'smtp.163.com' # 发送邮件的邮箱 的 SMTP服务器,这里用了163邮箱EMAIL_PORT = 25 #.

2021-02-20 18:31:12 169

原创 django测试用例入门

from unittest import TestCaseimport unittestclass MyTest(TestCase): """ 测试用例 """ def setUp(self) -> None: """ 测试前执行 :return: """ pass def tearDown(self) -> None: """ 测试后

2021-02-19 18:51:53 336

原创 IPy中常用方法封装

from IPy import IPclass NetIp(object): def __init__(self,ip=''): self.ip=ip def check_valid_net(self): # 判定是否为网段 if not self.ip.__contains__('/'): return False return self.check_valid_ip() def check_valid_ip(self): try: # 判定ip是否合法

2021-01-14 17:17:54 143

原创 python按批次批量更新/新增

class Patch(object): def __init__(self,patch_list,instance,patch_number=500,fields=None): self.patch_list=patch_list self.instance=instance self.patch_number=patch_number self.fields=fields self.__result=[]

2021-01-08 13:52:22 751

原创 递归树以及循环树算法

一般情况下,我们从数据库拿到的数据是这样的但往往前端所要的数据是直接返回树,以便递归展示,即将每个节点下挂上孩子节点。既然如此,各个语言均是互通的,博主仅提供python递归写法,请客官细品:class BTree(object): def __init__(self,tree,primary_key='id',parent_key='parent'): self.tree = tree self.primary_key = primary_key self.parent_key =

2020-12-16 23:40:48 2334 2

原创 el-upload手动上传文件

很多上传场景不需要自动上传,而是需要请求后端上传,并返回成功结果,才算一次上传成功。接下来开始实现如何手动上传文件。<template> <div> <el-upload ref="uploadButton" action="" :on-preview="previewFile" :on-remove="handleRemove" :before-upload="beforeUpload" :limit="limit" :on-

2020-12-16 23:03:47 12046 4

原创 vue-tinymce富文本整合,并上传图片

安装tinymce-vue,tinymcenpm install @tinymce/tinymce-vue -Snpm install tinymce -S集成tinymce并封装成组件<template> <div> <Editor v-model="content" :init="options" :disabled="false" > </div></template><script>

2020-12-16 22:23:30 323

原创 蓝鲸实现上传和下载

上传文件def upload(request): from config import BASE_DIR from blueapps.conf import settings file=request.FILES.get('file') if file: file_path = os.path.join(BASE_DIR,'USERRES/static/') if not os.path.exists(file_path): os.makedirs(file_path) file

2020-12-16 21:37:19 2084

原创 蓝鲸接口分页

分页器class BkPageManage(object): def __init__(self, func, page=1, start=0, limit=200, no_page=False, **kwargs): self.func = func self.page = page self.start = start self.limit = limit self.no_page = no_page

2020-12-12 17:21:20 281

原创 element菜单实战

文件sidebar.vue<template> <el-menu unique-opened background-color="#182132" text-color="#9ca9bb" active-text-color="#fff" :default-active="defaultActive" @select="handleMenuSelect" > <template v-for="menu in menus"> <

2020-11-26 20:16:35 343

原创 element步骤条实战

文件StepManger.vue<template> <div> <el-steps :active="stepActive" finish-status="process" process-status="wait" align-center > <el-step v-for="step in data.steps" :key="step" :title="step"/> </el-steps>

2020-11-26 19:33:48 5044 5

原创 element合并单元格实战

<el-table :data="data" :span-method="spanMethod"/>spanMethod({rowIndex,columnIndex}){ if(columnIndex===0){ if(rowIndex===0){ return { rowspan:data.length,//合并行数 colspan:1 // 合并列数 } }else{ // 除第一行外,其他行不显示 return { row.

2020-11-26 18:51:29 121

原创 python自定义实现链式sql

class StrBuffer(array): # 将字符串放入缓冲队列 def extend(self,*args,**kwargs): super().extend(*args,**kwargs) return self def to_string(self,*args,**kwargs): super().tounicode(*args,**kwargs) return selfclass GenQuerySQL(object): def __init__(self,tab

2020-11-16 16:09:20 168

原创 基于element-upload的自定义图片裁剪上传

核心代码<el-upload list-type="picture-card" action="" :auto-upload="false" :show-file-list="false" :on-change="changeUpload"><img v-if="pic.file_url" :src="pic.file_url" :width="150" :height="150"><i v-else class="el-icon-plus ava.

2020-10-28 18:56:18 916

原创 基于vue的element-table分页选中

核心思路采用前端分页,通过复制引用,保证选中状态不丢失每次多选都需要清空当前页选择项,push完将其放入集合为列表中的所有属性添加索引分页后重新分配选中核心方法data(){ return{ data:[], copyData:[], pageInfo:{pageNum:1,pageSize:5,total:0}, multipleSelectionIndex:[] }}handleSelect(select,row){ if(select.length.

2020-10-21 14:13:10 572

原创 java处理占位符

import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.util.Map;/** * 配置文件或模板中的占位符替换工具类 */public class PlaceholderUtils { private static final Logger logger = LoggerFactory.getLogger(PlaceholderUtils.class); /** * 占位前缀: "

2020-09-13 16:17:13 1941

原创 蓝鲸结合vue部署手册

部署SaaS到测试/正式环境修改应用基本配置修改配置文件中Saas平台创建应用生成的APP_ID、APP_TOKEN,配置BK_PAAS_HOST为蓝鲸实际访问路径,APP_NAME为页面标题。编写第一个应用程序,HelloWorld创建应用# 根路径执行命令python manage.py startapp demo编写第一个程序HelloWorld,在刚刚新建的a...

2020-04-14 16:54:51 2338

原创 出差年度总结

年度总结——个人总结10月28号10月29号10月30号10月31号11月1号11月2号11月3号策略模式介绍10月28号    裁剪二维码,整理突发状况处理方案10月29号    检测pad的时间、Wifi以及将现场常用软件放在程序坞,访问项目网址,然后现场调查,检测网络。  &nbsp...

2020-01-17 15:12:21 216

echarts本地文档

echarts本地文档

2020-12-21

bk-exam-one.zip

环境准备:搭建好至少3台云服务器,并且通过蓝鲸安装指南,将3台机器都装好服务。 本地环境准备:本地至少有python服务,前端采用vue技术,必须安装node 代码准备:必须将代码上传至代码仓库,或者通过运维达成tar包,方可部署蓝鲸 部署准备:在蓝鲸开发者中心,创建应用,填写相关参数,一键部署

2020-06-01

空空如也

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

TA关注的人

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