# -*- coding: utf-8 -*-

import sys
import time CTRL_A='\x01'
CTRL_B='\x02'
thedate = ''
thetime = ''
sn = ''
asr = ''
intent = ''
nlp = ''
domain = '' def speechHandle(inputFile,outputFile):
print "********** speechHandle " + inputFile + " start **********"
try:
input = open(inputFile, 'r')
output = open(outputFile, 'a+')
while True:
line = input.readline()
if len(line.strip()) < 1:
break
fileds = line.split(CTRL_A)
fieldsLen = len(fileds)
if fieldsLen == 6:
for fIndex in range(0,6):
kv = fileds[fIndex].split(CTRL_B)
kvLen = len(kv)
if kvLen == 2:
if kv[0].strip()=='time':
unixtimestamp = kv[1]
timetmp = time.localtime(int(unixtimestamp)/1000)
thedate = time.strftime("%Y-%m-%d", timetmp)
thetime = time.strftime("%H:%M:%S", timetmp)
elif kv[0].strip()=='id':
sn = kv[1]
elif kv[0].strip()=='asr':
asr = kv[1]
elif kv[0].strip() == 'intent':
intent = kv[1].strip()
elif kv[0].strip() == 'domain':
domain = kv[1]
lineOut = thedate + CTRL_A + thetime + CTRL_A + sn + CTRL_A + asr + CTRL_A + intent + CTRL_A + domain + "\n"
output.write(lineOut)
else:
print line
except IOError as ioerr:
print 'File Error' + str(ioerr)
exit(-1)
finally:
input.close()
output.close() print "********** speechHandle " + inputFile + " end **********" if __name__ == '__main__':
if len(sys.argv) != 3:
print "Please input inputFile and outputFile"
else:
speechHandle(sys.argv[1], sys.argv[2])

供参考

Python以不可见字符作为列分割符的更多相关文章

  1. Android 用空格作为分割符切割字符串

    项目中有需要用到空格作为分割符切割字符串,进而转为List. String wordStore = edWord.getText().toString(); String[] word = wordS ...

  2. python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字

    python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字在字符串里面插入指定分割符的方法,先把字符串变成list然后用join方法变成字符串str=' ...

  3. python print输出unicode字符

    命令行提示符下,python print输出unicode字符时出现以下 UnicodeEncodeError: 'gbk' codec can't encode character '\u30fb ...

  4. Python核心编程--学习笔记--6--序列(上)字符串

    本章研究Python中的序列:字符串.列表和元组.因为这些类型其实都是由一些成员共同组成的一个序列整体,所以我们把它们统称为序列.序列的存储结构可以表示为: 1 序列 序列类型有着相同的访问模式:按下 ...

  5. python每次处理一个字符的三种方法

    python每次处理一个字符的三种方法 a_string = "abccdea" print 'the first' for c in a_string: print ord(c) ...

  6. Lua 用指定字符或字符串分割输入字符串,返回包含分割结果的数组

    // 用指定字符或字符串分割输入字符串,返回包含分割结果的数组 // @function [parent=#string] split // @param string input 输入字符串 // ...

  7. python之旅:字符编码

    一 了解字符编码的知识储备 一 计算机基础知识 知识储备:cpu.内存.硬盘 二 文本编辑器存取文件的原理(nodepad++,pycharm,word) #1.打开编辑器就打开了启动了一个进程,是在 ...

  8. php用explode,可以提供多个字符作为分割符来进行分割数组吗?

    explode — 使用一个字符串分割另一个字符串, 它的函数原型如下: array explode ( string $delimiter , string $string [, int $limi ...

  9. python中的格式化字符

    python中的格式化字符在python中我们会遇到一个问题,问题是如何输出格式化的字符串.我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串,而xxx的内容都是根据 ...

随机推荐

  1. SCSS 实用知识汇总

    1.变量声明 $nav-color: #F90; nav { //$width 变量的作用域仅限于{}内 $width: 100px; width: $width; color: $nav-color ...

  2. Java根据两点的经纬度来计算之间的距离

    import java.util.HashMap; import java.util.Map; public class MapDistance { private static double EAR ...

  3. Web Service——CXF发布REST服务

    1. 什么是REST REST,英文representational state transfer(表象性状态转变)或者表述性状态转移,REST是web服务的一种架构风格,使用HTTP.URI.XML ...

  4. firefox 前端开发插件

    http://blog.csdn.net/xjinza/article/details/6856249

  5. WordPress网站搬家全过程 亲身体验WordPress搬家,总结几点

    需要移动的文件主要是网站文件和数据库文件,如果是简单的wordpress   操作就是:备份网站文件,导出数据库文件,上传网站文件,导入数据库文件,移动网站文件,修改wordpress的wp-conf ...

  6. Ubuntu 10.04 安装Qt4.8.1 源码后字体模糊的问题

    Ubuntu 10.04 安装QT4.8.1 源码后字体模糊的问题. 附加解决 QT SDK 4.8.1 链接失败的问题 Ubuntu 10.04 编译QT源码后,编译程序,运行后IPA字体无法正常显 ...

  7. android中ImageView的ScaleType属性

    android中ImageView的ScaleType属性 ScaleType的值分别代表的意义: ImageView是Android中的基础图片显示控件,该控件有个重要的属性是ScaleType,该 ...

  8. 命名管道FIFO和mkfifo函数

    进程间通信必须通过内核提供的通道,而且必须有一种办法在进程中标识内核提供的某个通道,前面讲过的匿名管道是用打开的文件描述符来标识的.如果要互相通信的几个进程没有从公共祖先那里继承文件描述符,它们怎么通 ...

  9. 线程的属性和 线程特定数据 Thread-specific Data

    一.posix 线程属性 POSIX 线程库定义了线程属性对象 pthread_attr_t ,它封装了线程的创建者可以访问和修改的线程属性.主要包括如下属性: 1. 作用域(scope) 2. 栈尺 ...

  10. STM32以太网ETH

    注:stm32F1系列中F103片上不含MAC控制器,所以不支持以太网,只有F105和F107才支持