python 多个txt转为csv,并且每个txt的解析数据不同
时间: 2023-04-10 15:02:54 浏览: 66
可以使用Python的pandas库来实现这个功能。首先,需要安装pandas库,然后使用以下代码:
```python
import pandas as pd
import glob
# 获取所有txt文件的路径
txt_files = glob.glob("*.txt")
# 创建一个空的DataFrame
df = pd.DataFrame()
# 循环遍历所有txt文件
for file in txt_files:
# 根据不同的txt文件解析数据
if file == "file1.txt":
data = pd.read_csv(file, delimiter="\t")
elif file == "file2.txt":
data = pd.read_csv(file, delimiter=",")
# ...
# 将解析后的数据添加到DataFrame中
df = df.append(data)
# 将DataFrame保存为csv文件
df.to_csv("output.csv", index=False)
```
这段代码会将所有txt文件解析为DataFrame,并将它们合并为一个DataFrame,最后将结果保存为csv文件。注意,需要根据不同的txt文件解析数据,这里只是示例代码,实际情况需要根据具体的数据格式进行修改。
相关问题
python批量将txt转为csv
好的,可以使用Python中的pandas库来实现批量将txt文件转为csv文件的操作。具体步骤可以参考以下代码:
```python
import os
import pandas as pd
# 设置源文件目录和目标文件目录
source_dir = "./source/"
target_dir = "./target/"
# 遍历源文件目录中的所有txt文件,逐个进行转换
for filename in os.listdir(source_dir):
if filename.endswith(".txt"):
# 读取txt文件并转为DataFrame格式
file_path = os.path.join(source_dir, filename)
df = pd.read_csv(file_path, sep="\t")
# 生成目标文件路径并保存为csv格式
target_path = os.path.join(target_dir, filename.replace(".txt", ".csv"))
df.to_csv(target_path, index=False)
```
代码中首先设置了源文件目录和目标文件目录,然后使用os库的listdir()函数遍历源文件目录中的所有txt文件。对于每一个txt文件,我们使用pandas库的read_csv()函数读取为DataFrame格式,并将其保存为csv格式,最终存储到目标文件目录中。
以上是批量将txt转为csv的Python代码,希望能对您有所帮助。
python如何讲txt转为csv
可以使用Python中的csv模块和pandas库将txt文件转换为csv文件。
1. 使用csv模块将txt转换为csv:
```python
import csv
with open('input.txt', 'r') as txt_file:
with open('output.csv', 'w', newline='') as csv_file:
csv_writer = csv.writer(csv_file, delimiter=',')
for line in txt_file:
csv_writer.writerow(line.strip().split())
```
上述代码中,将原始文件以读模式打开,然后将每一行按照空格进行分割,并写入csv文件中。
2. 使用pandas库将txt转换为csv:
```python
import pandas as pd
data = pd.read_csv('input.txt', delimiter=' ')
data.to_csv('output.csv', index=False)
```
上述代码中,使用pandas库的read_csv函数读取txt文件,并指定分隔符为空格。然后使用to_csv函数将数据保存为csv文件。
注意事项:
- txt文件的分隔符可以是空格、逗号、制表符等。
- 转换后的csv文件可以使用Excel、Google Sheets等软件打开。