Python统计时间内的并发数代码实例


Posted in Python onDecember 28, 2019

这篇文章主要介绍了Python统计时间内的并发数代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

Python实现并发的手段:

1、操作系统提供:进程、线程;

2、编程语言提供:协程:用户空间的调度(py3);

# coding:utf-8

# 1.导入模块
# datatime模块用于定义时间及时间的加减操作
# MySQLdb模块用于Python2.0连接数据库,Python3.0连接数据库使用pymysql
# xlwt模块是excel操作模块,用于将数据写入excel中

import datetime
import MySQLdb
import xlwt

# 2.连接数据库,获取数据
# MySQLdb.connect用于定义连接数据库的属性
# myconn.cursor()定义游标对象
# query_sql定义查询的语句
# mycursor.execute()执行查询语句,仅仅是执行语句,不输出结果。
# mycursor.fetchall()提取查询数据。all全部数据,one单条数据,many取多少条数据。fetchmany(10)取10条数据。
# mycursor.close()关闭游标
# myconn.close()关闭连接

myconn = MySQLdb.connect(host='1',user='wn',passwd='9eu',db='bs',charset='utf8')
mycursor = myconn.cursor()
query_sql = '''
select JOIN_TIME,LEAVE_TIME from commfee where JOIN_TIME between '2019-12-24 15:00:00' and '2019-12-24 15:30:00' 
'''

mycursor.execute(query_sql)
sql_result = mycursor.fetchall()
mycursor.close()
myconn.close()

# 3.定义全局参数
# sum1 = []定义列表sum1,sum1用于生成比较的时间列表
# sum2 = []定义列表sum2,sum2用于生成并发数的列表

sum1 = []
sum2 = []

# 4.定义数据筛选函数
# compare_time 比较时间,最开始值取开始时间的第一个值。
# start_time = [sql_result[i][0] for i in range(0,len(sql_result))]将查询到的结果拆分为两个列表start_time和end_time。
# compare_time < start_time[len(sql_result)-1],compare_time时间和start_time列表中的时间比较
# compare_time += datetime.timedelta(seconds=1),每次比较后,compare_time时间+1
# datetime.timedelta(seconds=1),timedelta(seconds=1)时间变化1s
# sum1.append(compare_time),将得到的compare_time写入sum1列表中。

def query_data():
  compare_time = sql_result[0][0]
  start_time = [sql_result[i][0] for i in range(0,len(sql_result))]   
  end_time = [sql_result[i][1] for i in range(0,len(sql_result))]
  while compare_time < start_time[len(sql_result)-1]:
     compare_time += datetime.timedelta(seconds=1)     
     count1 = 0     
     count2 = 0
     for time1 in start_time:      
       if time1 <= compare_time:         
         count1 = count1 + 1         
     for time2 in end_time:              
       if time2 <= compare_time:          
         count2 = count2 - 1         
     sum1.append(compare_time)     
     sum2.append(count1+count2)

# 5.定义excel操作函数
# xlwt.Workbook(encoding='utf-8')定义编码格式
# wbk.add_sheet('My worksheet')定义操作的sheet表
# xlwt.XFStyle()定义单元格格式
# datastyle.num_format_str = 'yyyy-mm-dd hh:mm:ss'定义单元格中数据格式
# worksheet.write(row,0,sum1[row],datastyle) 按定义的格式写入数据
# wbk.save()保存操作的excel表格。

def re_sheet():      
  wbk = xlwt.Workbook(encoding='utf-8')
  worksheet = wbk.add_sheet('My worksheet')
  datastyle = xlwt.XFStyle()
  datastyle.num_format_str = 'yyyy-mm-dd hh:mm:ss'
  for row in range(0,len(sum1)):    
     worksheet.write(row,0,sum1[row],datastyle)     
     worksheet.write(row,1,sum2[row])     
  wbk.save('Concurrency.xls')  
query_data()   
re_sheet()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
编写Python脚本来获取Google搜索结果的示例
May 04 Python
python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
May 25 Python
python/sympy求解矩阵方程的方法
Nov 08 Python
python使用pdfminer解析pdf文件的方法示例
Dec 20 Python
python3+selenium实现126邮箱登陆并发送邮件功能
Jan 23 Python
Python基础之高级变量类型实例详解
Jan 03 Python
Python图像处理库PIL的ImageFilter模块使用介绍
Feb 26 Python
实现ECharts双Y轴左右刻度线一致的例子
May 16 Python
树莓派4B安装Tensorflow的方法步骤
Jul 16 Python
详解Tensorflow不同版本要求与CUDA及CUDNN版本对应关系
Aug 04 Python
python 机器学习的标准化、归一化、正则化、离散化和白化
Apr 16 Python
pandas进行数据输入和输出的方法详解
Mar 23 Python
如何基于python实现脚本加密
Dec 28 #Python
python使用配置文件过程详解
Dec 28 #Python
python正则表达式匹配IP代码实例
Dec 28 #Python
python爬虫模拟浏览器访问-User-Agent过程解析
Dec 28 #Python
python爬虫添加请求头代码实例
Dec 28 #Python
python使用rsa非对称加密过程解析
Dec 28 #Python
Python遍历字典方式就实例详解
Dec 28 #Python
You might like
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
2012/12/10 PHP
PHP 7.1新特性的汇总介绍
2016/12/16 PHP
Prototype中dom对象方法汇总
2008/09/17 Javascript
web的各种前端打印方法之jquery打印插件jqprint实现网页打印
2013/01/09 Javascript
javascript中直接引用Microsoft的COM生成Word
2014/01/20 Javascript
完美兼容多浏览器的js判断图片路径代码汇总
2015/04/17 Javascript
分享十五款 jQuery 社交网络分享插件
2015/05/16 Javascript
JAVA四种基本排序方法实例总结
2015/07/24 Javascript
JS获取月份最后天数、最大天数与某日周数的方法
2015/12/08 Javascript
JS中script标签defer和async属性的区别详解
2016/08/12 Javascript
判断js的Array和Object的实现方法
2016/08/29 Javascript
jQuery实现动态控制页面元素的方法分析
2017/12/20 jQuery
React Router v4 入坑指南(小结)
2018/04/08 Javascript
JavaScript引用类型之基本包装类型实例分析【Boolean、Number和String】
2018/08/09 Javascript
Nodejs文件上传、监听上传进度的代码
2020/03/27 NodeJs
JQuery通过键盘控制键盘按下与松开触发事件
2020/08/07 jQuery
Vue3不支持Filters过滤器的问题
2020/09/24 Javascript
vue实现井字棋游戏
2020/09/29 Javascript
javascript局部自定义鼠标右键菜单
2020/12/08 Javascript
Python实现的矩阵类实例
2017/08/22 Python
Python WXPY实现微信监控报警功能的代码
2017/10/20 Python
一条命令解决mac版本python IDLE不能输入中文问题
2018/05/15 Python
python实现linux下抓包并存库功能
2018/07/18 Python
对Xpath 获取子标签下所有文本的方法详解
2019/01/02 Python
对Python使用mfcc的两种方式详解
2019/01/09 Python
python操作日志的封装方法(两种方法)
2019/05/23 Python
用python生成与调用cntk模型代码演示方法
2019/08/26 Python
python3中的eval和exec的区别与联系
2019/10/10 Python
python实现输出一个序列的所有子序列示例
2019/11/18 Python
python ftplib模块使用代码实例
2019/12/31 Python
html5 CSS过度-webkit-transition使用介绍
2013/07/02 HTML / CSS
学生自我鉴定模板
2013/12/30 职场文书
社区工作感言
2014/02/21 职场文书
酒店开业策划方案
2014/06/02 职场文书
运动员获奖感言
2014/08/15 职场文书
普通员工辞职信范文
2015/05/12 职场文书