gpt4 book ai didi

xls - 使用python将文本文件转换为excel文件

转载 作者:行者123 更新时间:2023-12-03 04:55:21 29 4
gpt4 key购买 nike

我正在研究 INFORMIX 4GL 程序。该程序生成输出文本文件。这是输出的示例:

Lot No|Purchaser name|Billing|Payment|Deposit|Balance|                
J1006|JAUHARI BIN HAMIDI|5285.05|4923.25|0.00|361.80|
J1007|LEE, CHIA-JUI AKA LEE, ANDREW J. R.|5366.15|5313.70|0.00|52.45|
J1008|NAZRIN ANEEZA BINTI NAZARUDDIN|5669.55|5365.30|0.00|304.25|
J1009|YAZID LUTFI BIN AHMAD LUTFI|3180.05|3022.30|0.00|157.75|

这个文本文件可以手动转换为excel文件。但是,我想问,是否有任何脚本可以用来将.txt文件转换为.xls文件?

大家好,现在我已经可以使用名为 Rami Helmy 的用户提供的脚本通过 python 将文本文件转换为 Excel 文件。非常感谢他。但是现在,该脚本将生成多个 Excel 文件,具体取决于关于“|”的数量除此之外,该脚本也只能转换一个文本文件。我将转换所有文本文件而不说明文本文件的名称。因此,我正在寻找一种方法来了解该脚本的执行方式:

  • 仅输出一个Excel文件
  • 转换用户指定目录中的所有 .txt 文件。
  • 输出excel的文件名是从文本文件的文件名自动复制的。

我是Python新手,希望有人能帮助我解决我的问题。谢谢..

完成了所有任务,但出现了一些问题..具有绿色标记的列的格式为文本文件,因此我无法对该列进行任何计算。该列需要转换为数字格式。其他来自该列,输出 Excel 文件包含一个“方形”符号,如下所示:

enter image description here

那么,转换文件时如何将绿色标记栏格式设置为数字呢?我怎样才能确保不存在这样的方形符号?请帮忙,谢谢...

那个奇怪的方形符号已经消失了,但那个绿色标记仍然存在。 enter image description here

大家好。我有一个问题要问,我已经得到了 RamiHelmi 给出的脚本,但扩展文件名将生成如下文件:

tester.txt --> tester.txt.xls

因此,我如何删除 '.txt.在输出文件上,这样它只会生成“tester.xls”文件扩展名。希望有人可以帮助解决我的问题..谢谢

最佳答案

要实现自动化,您可以使用此处描述的 python 脚本:

Automate conversion txt to xls

这是 python 脚本的更新版本,它将把给定目录中具有您所描述的格式的所有文本文件转换为 XLS 文件,并将它们保存在同一目录中:

# mypath should be the complete path for the directory containing the input text files
mypath = raw_input("Please enter the directory path for the input files: ")

from os import listdir
from os.path import isfile, join
textfiles = [ join(mypath,f) for f in listdir(mypath) if isfile(join(mypath,f)) and '.txt' in f]

def is_number(s):
try:
float(s)
return True
except ValueError:
return False

import xlwt
import xlrd

style = xlwt.XFStyle()
style.num_format_str = '#,###0.00'

for textfile in textfiles:
f = open(textfile, 'r+')
row_list = []
for row in f:
row_list.append(row.split('|'))
column_list = zip(*row_list)
workbook = xlwt.Workbook()
worksheet = workbook.add_sheet('Sheet1')
i = 0
for column in column_list:
for item in range(len(column)):
value = column[item].strip()
if is_number(value):
worksheet.write(item, i, float(value), style=style)
else:
worksheet.write(item, i, value)
i+=1
workbook.save(textfile.replace('.txt', '.xls'))

编辑

上面的脚本将获取 mypath 变量中指定的给定目录中的所有文本文件的列表,然后将每个文本文件转换为名为 generate_xls0.xls 的 XLS 文件> 那么下一个文件将被命名为 generate_xls1.xls 等...

编辑

在将字符串写入 XLS 文件之前剥离字符串

编辑

修改了脚本以处理数字格式

关于xls - 使用python将文本文件转换为excel文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19677104/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com