分析同事在线答疑的数据,考评模型还未最终给出:

import time
import sys
import optparse

#操作代码和同事名对应的文件
opfile = 'op_name.txt'
#定义问题总数
list_count_sum = 0;
evaluation = '十分满意'
limit_time = 120

name_dict = {}
name_list = []
limit_list = []

#将操作代码和名字加入字典
fg = open(opfile)
for name in fg.readlines():
    name = name.split(':')
    name_dict[name[0]] = name[1].strip('\n')
    name_list.append([name[0],0,0,0])
    limit_list.append([name[0]])
    #print (name_list)
fg.close

def get_element(name):
    for i_element in name_list:
        if i_element[0] == name:
            #print (i_element)
            return i_element[1],i_element[2]

#用optparse模板构造-f的类UNIX参数传递
parser = optparse.OptionParser()
parser.add_option('-f', '--file', dest='file',
                  help='Path to txt file', default='-')
opts, args = parser.parse_args()

#读到相关数据并进行统计
fh = open(opts.file)
for line in fh.readlines():
    list_count_sum += 1
    str = line.split('\t')
    start = time.strptime(str[2], "%Y/%m/%d %H:%M" )
    end = time.strptime(str[3], "%Y/%m/%d %H:%M" )
    op_time = (time.mktime(end) - time.mktime(start))/60
    #print (op_time,"分钟")
    #if evaluation in str[4].strip('\n'):
    #    for i_element in name_list:
    #        if i_element[0] == str[1]:
    #            i_element[1] += 1
    #print ("操作同事:" + name_dict[str[1]])
    for i_element in name_list:
            if i_element[0] == str[1]:
                if evaluation in str[4].strip('\n'):
                    i_element[1] += 1
                if op_time > limit_time:
                    i_element[3] += 1
                i_element[2] += 1
    if op_time > limit_time:
        for i_problem in limit_list:
            if i_problem[0] == str[1]:
                i_problem.append(str[0])

fh.close()

for i_element in name_list:
    print ('姓名\t','满意\t','总数\t','超时\t')
    print (name_dict[i_element[0]],'\t',i_element[1],'\t',i_element[2],'\t',i_element[3])

print ('总问题数:',list_count_sum)
for i_problem in limit_list:
    print(i_problem[0])
    for n in i_problem:
        print(n)

#print(name_data_sn3)
import time
import sys
import optparse

#操作代码和同事名对应的文件
opfile = 'op_name.txt'
#定义问题总数
list_count_sum = 0;
evaluation = '十分满意'
limit_time = 120

name_dict = {}
name_list = []
limit_list = []

#将操作代码和名字加入字典
fg = open(opfile)
for name in fg.readlines():
    name = name.split(':')
    name_dict[name[0]] = name[1].strip('\n')
    name_list.append([name[0],0,0,0])
    limit_list.append([name[0]])
    #print (name_list)
fg.close

def get_element(name):
    for i_element in name_list:
        if i_element[0] == name:
            #print (i_element)
            return i_element[1],i_element[2]

#用optparse模板构造-f的类UNIX参数传递
parser = optparse.OptionParser()
parser.add_option('-f', '--file', dest='file',
                  help='Path to txt file', default='-')
opts, args = parser.parse_args()

#读到相关数据并进行统计
fh = open(opts.file)
for line in fh.readlines():
    list_count_sum += 1
    str = line.split('\t')
    start = time.strptime(str[2], "%Y/%m/%d %H:%M" )
    end = time.strptime(str[3], "%Y/%m/%d %H:%M" )
    op_time = (time.mktime(end) - time.mktime(start))/60
    #print (op_time,"分钟")
    #if evaluation in str[4].strip('\n'):
    #    for i_element in name_list:
    #        if i_element[0] == str[1]:
    #            i_element[1] += 1
    #print ("操作同事:" + name_dict[str[1]])
    for i_element in name_list:
            if i_element[0] == str[1]:
                if evaluation in str[4].strip('\n'):
                    i_element[1] += 1
                if op_time > limit_time:
                    i_element[3] += 1
                i_element[2] += 1
    if op_time > limit_time:
        for i_problem in limit_list:
            if i_problem[0] == str[1]:
                i_problem.append(str[0])

fh.close()

for i_element in name_list:
    print ('姓名\t','满意\t','总数\t','超时\t')
    print (name_dict[i_element[0]],'\t',i_element[1],'\t',i_element[2],'\t',i_element[3])

print ('总问题数:',list_count_sum)
for i_problem in limit_list:
    print(i_problem[0])
    for n in i_problem:
        print(n)

#print(name_data_sn3)

要将PYTHON应用于工作啦的更多相关文章

  1. python大数据工作流程

    本文作者:hhh5460 大数据分析,内存不够用怎么办? 当然,你可以升级你的电脑为超级电脑. 另外,你也可以采用硬盘操作. 本文示范了硬盘操作的一种可能的方式. 本文基于:win10(64) + p ...

  2. python获得当前工作目录和修改

    import os  curDir = os.getcwd() 最近使用Python 写了很多脚本,想导入脚本,发现不知道如何查看python 的默认工作目录,并修改默认工作目录. 方法/步骤   查 ...

  3. python 3 在工作中的应用

    Python 3在工作中的使用 安装配置Python 3 在notepad++中配置Python 3 使用sql server数据库 操作Excel 发送email python 3 使用日志   安 ...

  4. 打开pycharm提示python已停止工作

    今天遇到一个棘手的问题: 现象:打开pycharm,立刻提示python已停止工作,关掉后还会弹出一个新的,就是永远维持至少一个提醒框在界面的状态 解决过程: 方法一:然后在网上搜解决办法,有一个主流 ...

  5. python解决excel工作薄合并处理

    年度了,要对每个月的数据进行总的汇总,去计算每消耗品的使用情况,表格都在一个工作表的不同sheet中,并且格式相同,所以就用python写了这个小脚本,现在把脚本粘贴出来,以后有需要就可以在此基础上改 ...

  6. 大专生自学Python到找到工作的心得

    先做个自我介绍,我13年考上一所很烂专科民办的学校,学的是生物专业,具体的学校名称我就不说出来献丑了.13年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望,我就退学 ...

  7. Python快速定位工作目录

    原文链接:http://www.cnblogs.com/wdong/archive/2010/08/19/1802951.html 常年奋斗在编码一线的同学,应该都深有体会,工作久了,很多项目文件.技 ...

  8. 自学python到找到工作的心得

    先做个自我介绍,我13年考上一所很烂专科民办的学校,学的是生物专业,具体的学校名称我就不说出来献丑了.13年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望,我就退学 ...

  9. 学习Python 能找到工作?1300+条招聘信息告诉你答案

    对于python这块有任何不懂的问题可以随时来问我,我对于学习方法,系统学习规划,还有学习效率这些知道一些,希望可以帮助大家少走弯路.当然也会送给大家一份系统性的python资料,文末附有爬虫项目实战 ...

  10. Python 改变当前工作目录

    在shell里编辑: import os os.getcwd()   #取得当前工作目录 os.chdir(r'目标目录')   # os.chdir(r'd:\learnpy')

随机推荐

  1. jsp获取服务端的访问信息

    获取服务端访问信息 public static String getUrl(HttpServletRequest request){ String url = ""; if(req ...

  2. jQuery模拟页面加载进度条

    因为我们无法通过任何方法获取整个页面的大小和当前加载了多少,所以想制作一个加载进度条的唯一办法就是模拟.那要怎么模拟呢? 我们知道,页面是从上往下执行的,也就是说我们可以大致估算出在页面的某个位置加载 ...

  3. css hack方法总结

    IE6识别:下划线 _ 和 星号 *IE7识别:星号 *IE6-IE10识别: \9 css hack方式,条件注释法<!--[if IE]>这段文字只在IE浏览器显示<![endi ...

  4. 多线程与Socket编程

    一.死锁 定义: 指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去.此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁 ...

  5. 从腾讯QQ升级游戏之“快速加入游戏”功能的实现缺陷看C/S之间如何正确分配相关协作

    转载:http://space.itpub.net/17007506/viewspace-615570 笔者在闲暇时,偶尔会登录腾讯QQGame玩玩升级游戏.这确实是一款非常优秀的软件作品,腾讯的开发 ...

  6. AndroidStudio中 R文件缺失的办法

    AndroidStudio中 R文件缺失 找不到R文件的原因有如下两类: 1:IDE或代码问题,非个人原因: 2:个人误操作导致IDE不予提示R文件: 下面是解决办法: 第一种 ①首先确保资源文件是否 ...

  7. SQL Server 损坏修复

    目录: 一. 常见错误解读 二. DBCC CHECKDB 三 .不同部位损坏的应对 四. Database Mirroring和AlwaysOn的页面自动修复功能 一 常见错误解读 SQL Serv ...

  8. 关于Androdi中SQLITE 3采用GBK编码存储,数据库中文乱码问题。

    1.最近开发一个项目,用SQLite Expert Personal打开数据库如下图,title会产生乱码,问题. 2.由于SQL lite默认是存储UTF-8格式,后来更改数据库编码类型为ANSI, ...

  9. WPF 窗体中的 Canvas 限定范围拖动 鼠标滚轴改变大小

    xaml代码: <Canvas Name="movBg"> <Canvas.Background> <LinearGradientBrush EndP ...

  10. JS实时监听浏览器宽度的变化

    boot:function(){ //加载页面时执行一次 changeMargin(); //监听浏览器宽度的改变 window.onresize = function(){ changeMargin ...