作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有如下数据框。
df3.head(5)
ORDER STS_CODE Date
20200210285112 117 2030-12-31
20200210285112 300 2020-02-18
20200210285104 300 2020-02-20
20200210285101 400 2020-02-16
20200210285100 500 2030-02-19
( eg. 20200210285100_500.xml)
为df3中的每个记录创建不同的XML
head ="""
<?xml version="1.0" encoding="UTF-8"?>
<hdr:MSGHDR>
<VERNUM>0100</VERNUM>
<CREDTM>{0}</CREDTM>
</hdr:MSGHDR>
"""
body ="""
<ord:ORD>
<ORDKEY>{}</ORDKEY>
<ORDTYP>TO</ORDTYP>
<osi:ORDSTSINF types:STSCDE="{}">
<DTM>{}</DTM>
</osi:ORDSTSINF>
</ord:ORD>
"""
footer = """</ilsord:ILSORD>
"""
from datetime import datetime
import time
df3 = pd.read_csv('XML1.csv')
df3.drop(df3.filter(regex="Unnamed"),axis=1, inplace=True)
glogdate = datetime.today().strftime('%Y-%m-%d %H:%M:%S')
with open('Test.xml', 'w') as f:
f.write(head.format(glogdate))
for row in df3.itertuples():
f.write(body.format(row[1], row[2], row[3]))
f.write(footer)
最佳答案
如果愿意,可以坚持使用itertuples
。您需要做的就是在循环中创建文件。
for row in df3.itertuples():
with open(f'{row[1]}_{row[2]}.xml', 'w') as f:
f.write(head.format(glogdate))
f.write(body.format(row[1], row[2], row[3]))
f.write(footer)
关于python-3.x - 如何在Python中为数据框的每一行创建唯一的XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60180608/
我是一名优秀的程序员,十分优秀!