python实现从txt文件中读取内容,遇到带/n的数字组合就去掉此数字,并将处理后的结果每四个一列导入一个新的excel表中
时间: 2024-09-21 15:06:18 浏览: 75
在Python中,你可以使用`pandas`库来轻松地读取txt文件,处理数据(如移除/\n),然后将数据写入Excel文件。以下是简单的步骤:
首先,确保已安装了`pandas`和`openpyxl`库,如果还没有安装可以使用pip进行安装:
```bash
pip install pandas openpyxl
```
接下来,我们可以编写一个函数来完成这个任务:
```python
import pandas as pd
def process_and_write_to_excel(input_file, output_file):
# 读取txt文件
with open(input_file, 'r', newline='', encoding='utf-8') as f:
lines = f.readlines()
# 创建一个空列表,用于存储处理后的行
processed_data = []
# 遍历每一行,处理并分割数据
for line in lines:
# 移除/\n
clean_line = line.replace('\n', '')
# 如果有数字组合,尝试将其转换为整数,若不是则保留原样
try:
num = int(clean_line)
if '/' not in str(num): # 检查数字是否包含'/'
clean_line = str(num) # 如果不包含,则转换回字符串
except ValueError:
pass
processed_data.append(clean_line)
# 将数据转化为DataFrame,每四个元素一组
data_frames = [processed_data[i:i+4] for i in range(0, len(processed_data), 4)]
# 写入Excel文件,每组数据创建一个新的sheet
writer = pd.ExcelWriter(output_file)
for df, sheet_name in zip(data_frames, ['Sheet1', 'Sheet2', 'Sheet3', ...]):
df = pd.DataFrame(df)
df.to_excel(writer, sheet_name=sheet_name, index=False)
writer.save()
# 使用函数
input_file = 'input.txt' # 替换为你需要处理的txt文件名
output_file = 'output.xlsx' # 新建的Excel文件名
process_and_write_to_excel(input_file, output_file)
```
这里假设文本文件中每四行数据是一个完整的数据单元,如果没有固定的行数模式,你需要相应调整代码来适应你的需求。
阅读全文