Python:如何将*.dat文件保存为*.csv文件到新文件夹

Python:如何将*.dat文件保存为*.csv文件到新文件夹,csv,python-3.6,Csv,Python 3.6,我有一个文件夹,里面有很多用IDL程序创建的*.dat文件。我可以获取一个文件,将其转换为*.csv文件,并将其保存在其他现有文件夹中: import idlsave import csv input_file = idlsave.read("C:/Users/RAW/06211714.dat") n = input_file["raw"] with open("C:/Users/CSV/06211714.csv", "w", newline='') as f: writer = cs

我有一个文件夹,里面有很多用IDL程序创建的*.dat文件。我可以获取一个文件,将其转换为*.csv文件,并将其保存在其他现有文件夹中:

import idlsave
import csv

input_file = idlsave.read("C:/Users/RAW/06211714.dat")
n = input_file["raw"]
with open("C:/Users/CSV/06211714.csv", "w", newline='') as f:
    writer = csv.writer(f)
    writer.writerows(n)
行input_file=idlsave.readC:/Users/RAW/06211714.dat显示以下输出:

可用变量:原始类['numpy.recarray']

因此,只获取一个文件就可以了,但我正在寻找一种方法,一次获取所有*.dat文件,并将它们转换为具有原始名称的*.csv文件。 我曾想过这样的事情,但没有成功:

import glob
for filename in glob.glob("C:/Users/RAW/*.dat"):
for element in filename:
    i = idlsave.read(element)
    n = i["raw"]
    with open("C:/Users/CSV/*.csv", "w", newline='') as f:
        writer = csv.writer(f)
        writer.writerows(n)
有人能给我一些建议吗? 谢谢

import csv
import idlsave
from os import listdir
from os.path import isfile, join, splitext

dat_folder = "/folder/to/dat/files/"
csv_folder = "/folder/to/save/new/csv/files/"

onlyfilenames = [f for f in listdir(dat_folder) if isfile(join(dat_folder,f))]
for fullfilename in onlyfilenames:
    file_name, file_extension = splitext(fullfilename)
    if file_extension == ".dat":
        input_file = idlsave.read(dat_folder + fullfilename)
        n = input_file["raw"]
        with open(join(csv_folder, file_name + ".csv"), "w", newline='') as f:
            writer = csv.writer(f)
            writer.writerows(n)