自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于Pycharm配置RF脚本的方法和注意点

标题有很多关于Pycharm配置RF脚本的博文,我也是参考配置的,然后基于自己的项目需要做了几点优化,和配置过程中需要注意的几个点。1,参考其他博文,完成基本配置2,优化点1,需要配置一个window脚本,来运行。在python包下的scripts里新建一个pybot.bat文件,写:@echo offpython -m robot.run %*2,配置参数,把执行结果产生的log,report,保存到项目以外,提交代码方便,-d 自定义路径-v ENV:DEV_PRD 是配置执行项

2021-07-21 14:52:37 422

原创 python基本功

python基本功逻辑锻炼# n个人排成一列,每人手里面有0~n-1个球,如果有两人手中拥有同样数量的球,返回球的数量(如果有多组只需返回任意一组即可),否则返回-1# 例如:给定lst=[2,4,1,0,5,3,2,3]表示8人手中拥有的球的数量,返回值输出2或者3都是可行的import randomimport stringfrom time import sleepdef search(lst): n = 1 for i in lst: for j in

2021-07-18 17:14:17 207

原创 日志装饰器几种简单实现

日志装饰器def say_hello(country): def wrapper(func): def deco(*args, **kwargs): if country == 'china': print('你好!') elif country == 'america': print('hello') else:

2021-07-18 17:04:28 102

原创 心跳监控的基础逻辑

心跳监控的基础逻辑import threadingfrom time import sleepclass Heartbeat(threading.Thread): # 重点:要继承多线程父类,才能开启线程来做循环,不阻塞主线程 def __init__(self,): super(Heartbeat,self).__init__() def run(self): while True: print("333",threading

2021-07-18 16:59:44 153

原创 两个文件读取比较内容的几种方式

两个文件读取比较内容的几种方式import csvfrom decimal import Decimal# with open('ctp.csv', 'r') as f:# reader = csv.reader(f)# ctp_list = list(reader)# print(ctp_list[1])## with open('rem.csv', 'r') as f:# reader = csv.reader(f)# rem_list =

2021-07-18 16:53:22 126

原创 批量拉取代码,用于维护很多版本和很多代码仓的场景

批量拉取代码,用于维护很多版本和很多代码仓的场景,前提是代码已经拉取下来了,代码没有调试,框架是没有问题的function cmd_pull_codes(){ # 批量拉取代码 local code_pathandversion=$1 code_path=`echo "$code_pathandversion" | awk -F ';' '{print $1}'` code_version= $(echo "$(code_pathandversion)" | awk -F ';' 'print '

2021-07-18 16:41:45 92

原创 开机自定义启动应用的bat脚本,记录基本语法

写一个开机自定义启动应用的bat脚本,记录基本语法# 开机启动软件 windows应用,脚本保存.bat文件@echo off:: echo on:: activate exesecho outlook starttasklist|findstr /i/c:"outlook.exe"if %errorlevel%==0( echo outlook started. )else(start "path\outlook.exe")taskkill /f /im chrome.exes

2021-07-18 16:36:00 195

原创 函数调用继承了threading类的函数,不需要阻塞主线程,猜测默认等待子线程。

函数调用继承了threading类的函数,不需要阻塞主线程,猜测默认等待子线程。import threadingfrom time import sleepclass Heartbeat(threading.Thread): def __init__(self,): super(Heartbeat,self).__init__() def run(self): while True: print("333",threadi

2021-06-20 17:09:22 110

翻译 记录GIL导致多线程变单线程

最近在看Python的多线程,经常我们会听到老手说:“python下多线程是鸡肋,推荐使用多进程!”,但是为什么这么说呢?要知其然,更要知其所以然。所以有了下面的深入研究:首先强调背景:1、GIL是什么?GIL的全称是Global Interpreter Lock(全局解释器锁),来源是python设计之初的考虑,为了数据安全所做的决定。2、每个CPU在同一时间只能执行一个线程(在单核CPU下的多线程其实都只是并发,不是并行,并发和并行从宏观上来讲都是同时处理多路请求的概念。但并发和并行又有区别,并

2021-06-16 12:09:24 222

原创 python3--批量创建多线程(threading)不加锁实现线程安全方法之一

多线程和多进程最大的不同在于,多进程中,同一个变量,各自有一份拷贝存在于每个进程中,互不影响,而多线程中,所有变量都由所有线程共享,所以,任何一个变量都可以被任何一个线程修改,因此,线程之间共享数据最大的危险在于多个线程同时改一个变量,把内容给改乱了。所以为了解决这个问题,会有一些加锁等操作。这里博主提供一种不加锁的解决方案(记得点赞加关注哦,码字不易):import threadingn = 0 # 标记,看能否归零,不能证明被乱改了def thread1(): for t in

2021-05-28 18:50:04 999 1

原创 关于找工作的整个流程(简历编写,投简历,面试,笔试)经验

#写在前面:这是博主自己的一点点经验,只能代表自己的观点,不喜勿喷,可以交流,,,!我将从各个维度说,尽量有点逻辑,哈哈时间:主流是金三银四,金九银十,这个就不多说了地点:一线城市,省会(好废话 ,,哈哈)简历编写:简历编写,可能大家知道,这个可以按照star法则来写,不知道的就百度下,我这里提供方向和一些经验,需要准备两份star法则简历,一,就是面试用的,这一份要简单,重点,高大上吧。二,就是详细简历,也是要按照star法则来写,这样跟面试用的对应,详细简历就是指把个人基本信息,工作经历(st

2021-05-28 14:23:59 505

原创 统一回答pycharm工具terminal 不能识别python,shell命令问题

看到很多人在问这个terminal工具不能使用“python”命令,shell命令,在这里做一个回答,肯定对需要的你有帮助。记得点赞和关注哦。原因:terminal是pycharm集成的一个tools,那么他就需要设置一个应用来运行,就跟pycharm一样,他也是一个工具,需要python来编译执行。操作:在pycharm里 settings-》tools-》terminal-》shell path栏选择指定一个shell应用给他。这样才可以正常使用。我这里使用的git的bash应用。你也可以使用

2021-05-23 17:24:22 4012 3

原创 argparse模块获取命名行参数

argparse模块获取命名行参数# -*- coding: UTF-8 -*-import argparseif __name__ == '__main__': parser = argparse.ArgumentParser(description='test controller daemon') # description 介绍程序主要gongn parser.a...

2019-11-01 02:12:34 182

原创 遍历目录下所有需要文档合并

标题遍历目录下所有需要文档合并1. 需要第三方模块 pywin32pip install pywin322. 示例import osimport reallpath=[]def getallfile(path): allfilelist=os.listdir(path) # 遍历该文件夹下的所有目录或者文件 for file in allfilelist:...

2019-10-29 21:45:50 175

原创 logging

1. 日志级别⽇志⼀共分成5个等级, 从低到⾼分别是:DEBUGINFOWARNINGERRORCRITICAL说明:DEBUG: 详细的信息,通常只出现在诊断问题上INFO: 确认⼀切按预期运⾏WARNING: ⼀个迹象表明,⼀些意想不到的事情发⽣了,或表明⼀些问题在不久的将来(例如。 磁盘空间低”)。 这个软件还能按预期⼯作。ERROR: 更严重的问题,软件没能执⾏⼀...

2019-10-26 15:27:29 167

原创 对于python传参理解

对于python传参理解1、python传参2.栗子1、python传参1。python 万物皆可以对象,这不同于传统传值或者传引用,而是这两种的升级版,传递对象。如果函数收到的是可变对象(list,dict,,,),在函数内操作对象,比如,添加,删除操作,会改变函数外的参数;如果是对参数进行赋值等操作,不会改变原参数,这相当于把参数名这个标签贴到另一个值上面。如果函数收到是不可变对象(in...

2019-10-24 23:19:34 357

空空如也

空空如也

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

TA关注的人

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