[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
测试文件夹d:\1,d:\2
同文件名不重复的数据输出到d:\3文件夹
Python 3.5
  1. import os
  2. dic = {}
  3. def extract(dirPath='.'):
  4.     for i in os.listdir(dirPath):
  5.         with open('%s\%s' % (dirPath, i), 'r') as file:
  6.             for line in file:
  7.                 if i not in dic:
  8.                     dic[i] = []
  9.                 if line not in dic[i]:
  10.                     dic[i].append(line)
  11.                     
  12. def save(dirpath='.'):
  13.     for i in dic:
  14.         with open(r'%s\%s' % (dirpath, i), 'w') as file:
  15.             file.writelines(dic[i])
  16. #multiple source folder
  17. for i in [r'D:\1',r'D:\2']:
  18.     extract(i)
  19. #save folder
  20. save(r'D:\3')
  21. #print(dic)
复制代码

TOP

  1. #!/usr/bin/python
  2. # -*- coding:utf-8 -*-
  3. #在这几个文件夹中,在同名文件之间,若发现有相同的“行”内容,则全部删除不保留,在原始文件中只保留不重复的内容。
  4. import os
  5. dic = {}
  6. def uniq(dirPath='.'):
  7.     for i in os.listdir(dirPath):
  8.         with open('%s\%s' % (dirPath, i), 'r+') as file:
  9.             print("%s\n%s\n%s" % ('{:*<30}'.format(''), i, '{:*<30}'.format('')))
  10.             f = file.readlines()
  11.             file.seek(0)
  12.             file.truncate()
  13.             for line in f:
  14.                 if i not in dic:
  15.                     dic[i] = []
  16.                 if line not in dic[i]:
  17.                     dic[i].append(line)
  18.                     file.write(line)
  19.                     print(line)
  20. #multiple source folders
  21. for i in [r'D:\1',r'D:\2']:
  22.     uniq(i)
复制代码
1

评分人数

TOP

回复 5# 屡败屡战


    下载地址:https://www.python.org/ftp/python/3.6.4/python-3.6.4.exe

代码保存后缀    .py

TOP

本帖最后由 ivor 于 2018-2-25 18:06 编辑

回复 7# 屡败屡战
  1. <# :
  2. @echo off
  3. rem 增强代码兼容性,代码保存为 ".bat"、".cmd"、".ps1"均可执行
  4. powershell Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
  5. more +8 "%~f0" >"%~dpn0.ps1"
  6. powershell -File "%~dpn0.ps1"
  7. del "%~dpn0.ps1" & pause & exit /b
  8. #>
  9. dir *.txt | foreach {
  10.     $con = get-content $_
  11.     $n = 0
  12.     del $_
  13.     for ($i=$con.Count-1; $i -ge 0; $i-- -and $n++)
  14.     {
  15.         "【{0}】¥{1}" -f $n,$con[$i]
  16.         "【{0}】¥{1}" -f $n,$con[$i] | out-file -FilePath $_ -Append
  17.     }
  18. }
复制代码

TOP

返回列表