[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. stem.txt的编码没问题{'confidence': 1.0, 'encoding': 'UTF-8-SIG'}
  2. jd.txt的编码,我这里解不了.
  3. {'confidence': 0.20146231414170868, 'encoding': 'ISO-8859-2'}
复制代码
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xed in position 851491: invalid continuation byte
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

处理规则还得说清楚一点才好.
不然还得自己看代码确认你说的规则是什么样的.
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

本帖最后由 happy886rr 于 2016-4-3 19:45 编辑

回复 3# batsealine
花费15分钟去处理20万行,确实太漫长。算法的问题。加上序号,先从每行序号之后sort排序处理替换完,再按序号排恢复,最后替掉序号。

TOP

  1. os.path.basename(path)
复制代码
这样取文件名好了.
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

本帖最后由 pcl_test 于 2016-4-3 21:17 编辑

举个栗子,字典法
  1. # encoding: UTF-8
  2. from collections import OrderedDict
  3. stem = OrderedDict([('a','1'), ('b','2'), ('c','3')])
  4. jd = ['a 2', 'a 3', 'c 1', 'd 4', 'e 5', 'b 6']
  5. for i in jd:
  6. t = i.split()
  7. if stem.get(t[0]):
  8. stem[t[0]] += '\t' + t[1]
  9. for i, j in stem.items():
  10. print(i+'\t'+j)
复制代码
3

评分人数

    • CrLf: 666技术 + 1
    • batsealine: 这样实在太快了技术 + 1
    • codegay: 天啊,版主还能写得一手python技术 + 1

TOP

回复 2# happy886rr


    这是词库文件,顺序不能变的,不知道多线程是不适用这种情况。

TOP

回复 1# batsealine
你这文件全是utf8特殊字符,不知linux下的sort能处理不?我觉得应该将jd.txt和stem.txt合为一个txt。然后用sort排序,变相同首字紧排。之后挨行匹配替换会快非常多

TOP

返回列表