在Ansys Mechanical中用IronPython写CSV文件遇列分隔异常问题
问题:CSV写入后所有内容在同一单元格
尝试从Ansys Mechanical导出数据到CSV文件,但执行代码后列表中的内容未被逗号分隔,全部挤在同一个单元格里。
原代码示例:
import csv csv_outfile = r'Z:\Ansys\05-11-2022_output.csv' with open(csv_outfile, 'wb') as ofile: write = csv.writer(ofile) write.writerow(['1' ,'2' ,'3'])
问题原因
在Python 3环境下,使用二进制模式'wb'打开文件会干扰csv模块的默认分隔符、换行符处理逻辑,生成的CSV文件不符合标准格式,导致Excel等表格工具无法正确识别单元格分隔。同时未指定newline=''参数,会让系统自动添加额外换行符,进一步破坏文件结构。
修正后的代码
import csv csv_outfile = r'Z:\Ansys\05-11-2022_output.csv' # 使用文本模式写入,指定newline=''避免格式混乱 with open(csv_outfile, 'w', newline='', encoding='utf-8') as ofile: write = csv.writer(ofile) write.writerow(['1' ,'2' ,'3'])
补充说明
newline=''是csv模块官方推荐参数,用于避免写入时产生多余空行或格式异常。- 添加
encoding='utf-8'可确保文件编码兼容,避免特殊字符出现乱码问题。
内容的提问来源于stack exchange,提问作者nic
相关产品推荐
相关产品推荐

