记录一下将两个文件夹中相同文件名的文件提取到另一个文件夹中的两种方法

使用ubuntu操作:

ls images/ l more

ls images/ l cut -c -13

ls images/ l cut -c -13 l xargs -i mv./labels/{}.txt test/

查看数量命令: ls l wc -l

python操作: 

18d3fce8714b4266b79eb05970838ae5.jpg

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: Python读取多个txt文件并将文件某一行的值全部写入Excel,可以采用以下步骤: 1、首先需要安装Python的Excel操作库openpyxl,可以在命令行输入“pip install openpyxl”进行安装。 2、然后需要确定txt文件的路径,可以使用Python的os模块方法,如os.listdir()获取对应文件夹下的文件名列表。 3、用Python的for循环依次读取每个txt文件,并获取需要写入到Excel的某一行的值,可以使用Python的with open()方法打开文件,使用readlines()方法读取文件的每一行,最后使用split()方法或正则表达式提取需要的行数据。 4、使用openpyxl操作Excel,首先需要打开或创建一个Excel文件和一个工作簿(Workbook),然后使用Active方法获取具体的工作表(Worksheet),并根据读取的txt文件行数据在Excel对应的行进行数据写入,可以使用Python的for循环和Worksheet.cell(row,column,value)方法进行写入。 5、最后需要保存修改后的Excel文件,可以使用Python的Workbook.save()方法保存文件。 总之,Python读取多个txt文件,并将文件某一行的值全部写入Excel的实现,需要结合Python的文件操作、正则表达式和Excel操作等内容,通过掌握对应的Python库和方法,应该可以完成较为简单的CSV或TXT数据的读取和导入工作。 ### 回答2: Python可以通过多种方式读取多个txt文件,并将文件某一行的值全部写入Excel。其比较常见的方式是使用xlwt和xlrd库,这两个库可以分别用于Excel的写入和读取。 以下是一种通用的Python脚本,可以读取指定目录下所有txt文件,将文件某一行的值全部写入Excel的同一列: ```python import os import xlwt import xlrd # 设置txt文件路径和Excel文件路径 txt_path = "txt_files" excel_path = "output.xls" # 创建Excel文件,并设置第一行标题 wb = xlwt.Workbook() ws = wb.add_sheet("Sheet1") headers = ["文件名", "指定行内容"] for i, header in enumerate(headers): ws.write(0, i, header) # 获取txt文件列表,并遍历每个文件 files = os.listdir(txt_path) row = 1 # 从第二行开始写入数据 for file in files: if file.endswith(".txt"): # 读取txt文件指定行的内容 with open(os.path.join(txt_path, file), "r") as f: lines = f.readlines() content = lines[1].strip() # 假设需要获取第二行的内容 # 将文件名和指定行的内容写入Excel ws.write(row, 0, file) ws.write(row, 1, content) row += 1 # 保存Excel文件 wb.save(excel_path) print("数据已写入Excel文件") ``` 在以上脚本,首先需要指定txt文件和Excel文件的路径。然后使用xlwt库创建一个Excel文件,并设置第一行标题。接着通过os库获取txt文件列表,并逐个打开文件,读取指定行的内容。最后将文件名和指定行内容写入Excel,并保存Excel文件。 需要注意的是,为了让以上脚本能正常运行,需要先安装xlwt、xlrd和os三个库。可以使用pip命令进行安装,如下所示: ``` pip install xlwt pip install xlrd pip install os ``` 以上是一种Python读取多个txt文件,并将文件某一行的值全部写入Excel的基本方法。如果需要更加复杂的操作,可以根据具体需求进行调整。 ### 回答3: Python作为一种高级编程语言,拥有强大的文本处理能力,可以轻松读取多个txt文件,并将文件某一行的值全部写入Excel表格。 首先,我们需要导入Python的相关模块,包括os和xlwt,代码如下: ```Python import os import xlwt ``` 其,os模块是Python专门用于文件和目录操作的模块,而xlwt则是Python用于创建和写入Excel文件的模块。 接下来,我们需要设置读取的txt文件夹路径和要查询的行数,代码如下: ```Python path = './txt' # txt文件夹路径 row_num = 2 # 要查询的行数,以第2行为例 ``` 这里,我们设置了txt文件夹路径为'./txt',即当前文件夹下的txt文件夹。同时,我们也设置了要查询的行数为2,即第2行的数据。 接下来,我们需要遍历txt文件夹下的所有文件,并在每个文件读取指定行数的数据,代码如下: ```Python book = xlwt.Workbook() # 创建一个Excel工作簿 sheet1 = book.add_sheet('sheet1', cell_overwrite_ok=True) # 在工作簿创建sheet1 row_count = 0 # 工作表行数 # 遍历txt文件夹下的所有文件 for root, dirs, files in os.walk(path): for file in files: if file.endswith('.txt'): # 判断是否为txt文件 file_path = os.path.join(root, file) # 获取文件完整路径 with open(file_path, 'r', encoding='utf-8') as f: lines = f.readlines() # 读取文件所有行 row_data = lines[row_num - 1] # 获取指定行数据 # 写入Excel表格 for col, data in enumerate(row_data.strip().split('\t')): sheet1.write(row_count, col, data) row_count += 1 # 工作表行数加1 ``` 在代码,我们先创建了一个Excel工作簿,并在其创建了一个名为sheet1的工作表。然后,我们使用os.walk()函数遍历txt文件夹下的所有文件,对于每个以'.txt'结尾的文件,我们获取其完整路径,并使用open()函数打开文件并读取其所有行。接着,我们使用readlines()函数读取指定行数的数据,将其按照'\t'分割,并将数据依次写入Excel表格。 最后,我们需要将Excel文件保存到本地,代码如下: ```Python book.save('data.xls') # 保存Excel文件 ``` 完整代码如下: ```Python import os import xlwt path = './txt' # txt文件夹路径 row_num = 2 # 要查询的行数,以第2行为例 book = xlwt.Workbook() # 创建一个Excel工作簿 sheet1 = book.add_sheet('sheet1', cell_overwrite_ok=True) # 在工作簿创建sheet1 row_count = 0 # 工作表行数 # 遍历txt文件夹下的所有文件 for root, dirs, files in os.walk(path): for file in files: if file.endswith('.txt'): # 判断是否为txt文件 file_path = os.path.join(root, file) # 获取文件完整路径 with open(file_path, 'r', encoding='utf-8') as f: lines = f.readlines() # 读取文件所有行 row_data = lines[row_num - 1] # 获取指定行数据 # 写入Excel表格 for col, data in enumerate(row_data.strip().split('\t')): sheet1.write(row_count, col, data) row_count += 1 # 工作表行数加1 book.save('data.xls') # 保存Excel文件 ``` 这段代码可实现读取多个txt文件,并将文件某一行的值全部写入Excel表格,并将Excel文件保存到本地。如果有需要,还可以进一步优化代码的结构和性能。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

科萨福科

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值