将批量文件夹下的txt文件中指定内容,如GLS逗号旁边的数值写入excel对应列下
时间: 2024-10-22 13:13:01 浏览: 24
你可以使用Python中的pandas库配合os库来实现这个任务。以下是步骤:
1. **安装所需库**:
如果还没有安装pandas和openpyxl,可以使用pip进行安装:
```
pip install pandas openpyxl
```
2. **读取txt文件内容**:
遍历批量文件夹,对每个txt文件打开并读取GLS旁边数值部分。例如,假设GLS总是在每行的特定位置(比如第5列),你可以这样做:
```python
import os
import pandas as pd
def read_txt_files(directory):
data = []
for filename in os.listdir(directory):
if filename.endswith('.txt'):
with open(os.path.join(directory, filename), 'r') as f:
lines = f.readlines()
gls_value = lines[0].split(',')[4] # 假设GLS总在第5列,这里以逗号分隔
data.append({'File': filename, 'Value': gls_value})
return data
```
3. **将数据写入Excel**:
将读取的数据转换成DataFrame,并写入到Excel的工作表中:
```python
def write_to_excel(data, output_file):
df = pd.DataFrame(data)
df.to_excel(output_file, index=False)
# 使用函数处理批量文件夹
txt_dir = 'path/to/batch/folder'
output_file = 'output.xlsx'
data = read_txt_files(txt_dir)
write_to_excel(data, output_file)
```
4. **运行脚本**:
运行上述脚本,它会将txt文件中GLS后面的数值写入名为`output.xlsx`的Excel文件中,文件会有两列:`File`和`Value`。
**相关问题--:**
1. 为什么要用Python而不是其他语言处理这类任务?
2. 如果GLS值的位置不确定,如何动态查找?
3. 文件夹内有其他非.txt文件会怎样处理?是否需要排除?
阅读全文