我的helper模块(Python)

  • 前言
  • 一、helper模块
    • 1.具体代码
  • 二、使用步骤
    • 1.创建helper.py文件
    • 2.粘贴代码
    • 3.导入模块
  • 总结

前言

在我分享我所编写的代码时,发现我的函数大概率运用了我写的helper模块。

所以,我不能直接上传我所写的代码,而是要更改运用了helper模块的函数的相关代码。

而现在我发现,这样的工作量实在是太大了,遂我要分享给你们我的helper模块,以致力于方便我更注重于代码的分享。


一、helper模块

1.具体代码

import random
import time
from time import perf_counter#Helper函数
def ExitMSG_Return(funcName, MSG):"""此函数所接受的变量:funcName:str型MSG:str型此函数的作用:输出funcName该函数的错误信息MSG,并结束程序此函数返回值:None"""if type(funcName) != str and type(MSG) != str:ExitMSG_Return("ExitMSG_Return(funcName, MSG)", "\n\t\t\t\t\t\t\t\t\t1.funcName必须为str型""\n\t\t\t\t\t\t\t\t\t2.MSG必须为str型")if type(funcName) != str:ExitMSG_Return("ExitMSG_Return(funcName, MSG)", "funcName必须为str型")if type(MSG) != str:ExitMSG_Return("ExitMSG_Return(funcName, MSG)", "MSG必须为str型")exit("函数错误:\n%s错误:%s" %(funcName, MSG))
def isString(judged_object):return type(judged_object) == str
def isInt(judged_object):return type(judged_object) == int
def isFloat(judged_object):return type(judged_object) == float
def isNumber(judged_object):return isInt(judged_object) or isFloat(judged_object)
def isOperator(judged_object):return judged_object == '+' or judged_object == '-' or judged_object == '*' or judged_object == '/'
def isDict(judged_object):return type(judged_object) == dict
def Start(funcName):if isString(funcName):print('{:=^70}'.format('%s运行中' %funcName))else:ExitMSG_Return("Start(funcName)", "funcName必须为str型")
def Done(funcName):if isString(funcName):print('{:=^70}'.format('%s运行完成' % funcName))else:ExitMSG_Return("Start(funcName)", "funcName必须为str型")
def MakeList(a , b):"""此函数所接受的变量:a:int型b:int型此函数的作用:生成并返回一个从Int型a到Int型b的前闭后闭数组此函数返回值:List:int型数组"""if type(a) != int and type(b) != int:ExitMSG_Return("MakeList(a , b)", "\n\t\t\t\t\t1.a必须为int型""\n\t\t\t\t\t2.b必须为int型")if type(a) != int:ExitMSG_Return("MakeList(a , b)", "a必须为int型")if type(b) != int:ExitMSG_Return("MakeList(a , b)", "b必须为int型")if a <= b:List = []for i in range(a, b + 1):List.append(i)return Listelse:ExitMSG_Return("MakeList(a , b)", "开头的数值不能大于末尾的数值")
def MakeList_FullZero(Num):"""此函数所接受的变量:Num:int型此函数的作用:生成并返回一个长度为Num的全零数组此函数返回值:List:int型数组"""if type(Num) != int:ExitMSG_Return("MakeList_FullZero(Num)", "Num必须为int型")if Num < 0:ExitMSG_Return("MakeList_FullZero(Num)", "Num不能低于0(数组的长度不能为负数)")List = []for i in range(0, Num):List.append(0)return List
def MakeList_RandomNumber(Num, a, b):"""此函数所接受的变量:Num:int型a:int型b:int型此函数的作用:生成并返回一个长度为Num,每个数为【a,b】的随机取值的数组此函数返回值:lst1:int型数组"""if type(Num) != int:ExitMSG_Return("MakeList_RandomNumber(Num, a, b)", "Num必须为int型")if type(a) != int:ExitMSG_Return("MakeList_RandomNumber(Num, a, b)", "a必须为int型")if type(b) != int:ExitMSG_Return("MakeList_RandomNumber(Num, a, b)", "b必须为int型")if a > b:ExitMSG_Return("MakeList_RandomNumber(Num, a, b)", "a不能大于b")lst1 = []for i in range(0, Num):lst1.append(random.randint(a, b))return lst1
def MakeList_RandomIncrease(Num, a, b):"""此函数所接受的变量:Num:int型a:int型b:int型此函数的作用:每次生成一个数ri,下一个数的取值范围为【a+ri,b+ri】,以此类推共生成Num长度的int型数组此函数返回值:lst:int型数组"""if type(Num) != int:ExitMSG_Return("MakeList_RandomIncrease(Num, a, b)", "Num必须为int型")if type(a) != int:ExitMSG_Return("MakeList_RandomIncrease(Num, a, b)", "a必须为int型")if type(b) != int:ExitMSG_Return("MakeList_RandomIncrease(Num, a, b)", "b必须为int型")if a > b:ExitMSG_Return("MakeList_RandomNumber(Num, a, b)", "a不能大于b")lst = []aTemp = abTemp = bfor i in range(0, Num):ri = random.randint(aTemp, bTemp)lst.append(ri)aTemp += ribTemp += rireturn lst
def Range(a , b):"""此函数所接受的变量:a:int型b:int型此函数的作用:range函数的升级版,从原先的前闭后开变成了前闭后闭此函数返回值:List:int型数组"""if type(a) != int:ExitMSG_Return("Range(a , b)", "a必须为int型")if type(b) != int:ExitMSG_Return("Range(a , b)", "b必须为int型")if a <= b:List = []for i in range(a, b + 1):List.append(i)return Listelse:ExitMSG_Return("Range(a , b)", "开头的数值不能大于末尾的数值")
def Number_Separate(number):number_lst = []change_flag = FalseintRange_length = 0for num_str in str(number):if num_str == '.':change_flag = Truecontinueif change_flag:number_lst.append(int(num_str))else:intRange_length += 1number_lst.append(int(num_str))return [number_lst, intRange_length]
def Probabilistic_Operation(probability):upper = round(probability * 100)random_Num = random.randint(0, 100)if 0 <= random_Num <= upper:return Trueelse:return False
def Probabilistic_Operation_Function_Judge(probability):base_List = MakeList(1, 100)list_1 = base_List + [probability]# print(list_1)t_account = 0for i in range(0, 10000):if Probabilistic_Operation(probability):t_account += 1list_2 = base_List + [t_account / 10000]# print(list_2)length = len(list_1)X = list_1Y = list_2XY = []for i in range(0, length):XY.append(list_1[i] * list_2[i])X2 = []for i in list_1:X2.append(i ** 2)Y2 = []for i in list_2:Y2.append(i ** 2)X_A = sum(X) / len(X)Y_A = sum(Y) / len(Y)XY_A = sum(XY) / len(XY)X2_A = sum(X2) / len(X2)Y2_A = sum(Y2) / len(Y2)R = (XY_A - X_A * Y_A) / ((X2_A - X_A ** 2) ** (1 / 2) * (Y2_A - Y_A ** 2) ** (1 / 2))return R
class Watcher:def __init__(self, funcName):self.funcName = funcNamedef Start(self):Start(self.funcName)def Done(self):Done(self.funcName)
class Stack:def __init__(self, max_size):self.__stack_list = []self.__max_size = max_sizeself.__stack_length = 0def initialize(self):self.__stack_list.clear()self.__stack_length = 0def push(self, element):if self.__max_size == self.__stack_length:return Falseelse:self.__stack_length += 1self.__stack_list.append(element)def pop(self):if self.__stack_length == 0:return Falseelse:self.__stack_length -= 1return self.__stack_list.pop()def stack_length(self):return self.__stack_lengthdef get_top_element(self):if self.__stack_length == 0:return Falsereturn self.__stack_list[self.__stack_length - 1]def stack_self(self):return self.__stack_list

二、使用步骤

1.创建helper.py文件

2.粘贴代码

3.导入模块

在您所写的代码中导入该模块即可。

总结

以上就是我的helper模块的分享,并会在以后的日子里持续更新。

我的helper模块(Python)相关推荐

  1. OpenCV4 DNN模块 Python APIs

    OpenCV4.X - DNN模块 Python APIs 参考:https://blog.csdn.net/zziahgf/article/details/88900855 OpenCV 4.X 版 ...

  2. requests模块--python发送http请求

    requests模块--python发送http请求 方法一. ? 1

  3. 诗歌rails 之自定义Helper模块

    关键字: Rails Helper Rails默认为每个controller指定一个helper,所有的helper都放在app/helpers目录下 但是有些Helper我们希望是全局共享的,一般我 ...

  4. Python 进程 Process 模块 - Python零基础入门教程

    目录 一.Python 进程 Process 简介 二.Python 进程 Process 模块 三.Python 进程 Process 函数介绍 四.Python 进程 Process 使用 五.P ...

  5. python中csv模块是自带的吗_python csv模块 Python的CSV模块,怎么新建为添加模式

    在python 3.5.2中csv模块怎么 安装 首先打开cmd,Ctrl + R快捷键.输入cmd,点击回车.在cmd命令窗口输入python,检查环境是否配置好.退出环境exit().输入 pip ...

  6. python找图是什么模块-python中模块查找的原理与方法详解

    前言 本文主要给大家介绍了关于python模块查找的原理与方式,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍: 基础概念 module 模块, 一个 py 文件或以其他文件形式存在的可被 ...

  7. Python os模块 -Python系统编程中的操作模块

    Python os模块 -Python系统编程中的操作模块 用途:处理(文件与目录)操作 以下为简单的常用操作 import os 导入os模块 help(os) 查看os模块帮助文档 os.name ...

  8. python发音模块-python声音模块

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 这也是使用 python 标准库的方法,我们可以把写好的一些可复用的函数 ...

  9. 十年测试经验的阿里p10讲解python初阶:函数和模块 python全栈自动化测试系类4-2

    还是老规矩,大家可能对凡哥不是很了解这里先和大家来个自我介绍 凡哥我已经有着十二年互联网自动化测试和测试开发工程师,拥有丰富的自动化测试平台及测试开发经验,擅长接口测试.Python自动化全栈,测试开 ...

  10. python ffmpeg模块,python执行ffmpeg

    python执行ffmpeg命令 能拿到ffmpeg正常输出 ffmpeg抛出异常时可以拿到异常信息 返回ffmpeg处理进度 以下代码依赖的pexpect,progressbar需要安装下 impo ...

最新文章

  1. 提升Kaggle模型的实用小技巧!
  2. java%3e%3e=符号_android中一些特殊字符(如:←↑→↓等箭头符号)的Unicode码值...
  3. mysql游标结果为空
  4. SpringSecurity 案例之创建资源服务器准备工作
  5. DataProtection设置问题引起不同ASP.NET Core站点无法共享用户验证Cookie
  6. 【汇总推荐】深度学习、自然语言处理干货笔记汇总
  7. 皮尔洛和c罗讲什么语言,皮尔洛:如果我跟C罗是队友 我可能能成历史助攻王
  8. 梦中的统计(洛谷P1554题题解,Java语言描述)
  9. 【Guava】对Guava类库的注释类型 VisibleForTesting的理解
  10. 实战Nginx与Perl、Java的安装与配置
  11. 安装svn 汉化包 也不能设置中文
  12. uvlayout和MAYA的接口的问题
  13. 【算法笔记】Diadem Metric
  14. 【面霸系列 - 3】初级java如何挖掘自身的优势
  15. 玉米社:单页网站怎么做seo?优化思路?
  16. 基于python/scipy学习概率统计(3):正态分布
  17. python批量下载兰科植物网站的图片,并重命名文件
  18. @Windows server 2022安装使用(Workstation)
  19. 【深度学习】深度学习基础-Warm_up训练策略
  20. 使用js调用接口导出excel

热门文章

  1. A tale of two viewports — part one
  2. centos7.6安装mysql数据库_CentOS7.6安装MYSQL8.0
  3. movieclip_Flash脚本-在Flash中更改Movieclip的颜色
  4. 病毒的分类和命名规则
  5. [Maven实战-许晓斌]-[第二章]-2.7-2.8 Mave安装的最优建议和安装小结
  6. jmeter+ant+jenkins接口自动化测试框架
  7. Pytorch入门学习(九)---detach()的作用(从GAN代码分析)
  8. 什么是私有云、公有云、混合云?什么是云计算管理平台?
  9. 局域网oracle 速度慢,[转帖]局域网中其他用户感觉上网速度慢、网速卡
  10. dw 用html修改文字样式,Dreamweaver中插入文本以及文本格式设置方法?