Python 3.x 使用取自txt文件列表的变量写入文件
我正在尝试使用txt列表在Python中创建一个xml文件。在该列表中,我需要使用不同的对象来命名创建的文件,并将这些对象添加到插入的xml代码中 我的代码如下所示:Python 3.x 使用取自txt文件列表的变量写入文件,python-3.x,Python 3.x,我正在尝试使用txt列表在Python中创建一个xml文件。在该列表中,我需要使用不同的对象来命名创建的文件,并将这些对象添加到插入的xml代码中 我的代码如下所示: List = open(r"C:\Users\admin\Desktop\CTT\Feeder.txt") List2 = ('D707_FEEDER_' + s.strip() for s in List) for item in List2: open(r"C:\Users\admin\Desktop\CTT\Templat
List = open(r"C:\Users\admin\Desktop\CTT\Feeder.txt")
List2 = ('D707_FEEDER_' + s.strip() for s in List)
for item in List2:
open(r"C:\Users\admin\Desktop\CTT\Templates\%s.xml"%(item,), 'w')List.close()
我的对象列表“s”被称为Feeder.txt
,我设法创建了一个代码,在Feeder.txt文件中循环,并根据Feeder.txt中的对象列表为每个对象创建一个文件名为的文件。现在,我想在我刚刚创建的列表中的所有文件中插入一个xml代码,并使用相同的变量('s')写入每个文件
现在,我的文件名是D707\u FEEDER\u R407
,我想在该文件中插入一个代码:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<envGroups/>
<item>xxx<item/>
xxx
并将“xxx”替换为我的“s”变量,在本例中该变量为R407,因此我希望我的代码如下所示:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<envGroups/>
<item>R407<item/>
R407
我确实试过:
List=open(r“C:\Users\admin\Desktop\CTT\GlobalFilter.txt”)
列表2=('D607_GBF'+s.strip()表示列表中的s)
对于清单2中的项目:
f=打开(“模板\%s.xml”%(项,),'w')
f、 写入(“\n”)
f、 写入(“\n”)
f、 写入(f“{s.strip()表示列表中的s}”)
List.close()
f、 关闭()
但是,当我打开创建的xml文档而不是值“R407”时,我得到的是:
。
我能请教一下如何解决这个问题吗?
提前谢谢 尝试将write()函数中的语句转换为f字符串,以便将列表中s的剥离值放在{花括号}内的字符串中
write(f"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n
<envGroups/>\n
<item>{s.strip() for s in List}<item/>\n
")
write(f)“\n
\n
{s.strip()用于列表中的s}\n
")
另外,如果您可以提供语法错误消息,这可能有助于进一步调查 尝试将write()函数中的语句转换为f字符串,以便将列表中s的剥离值放在{花括号}内的字符串中
write(f"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n
<envGroups/>\n
<item>{s.strip() for s in List}<item/>\n
")
write(f)“\n
\n
{s.strip()用于列表中的s}\n
")
另外,如果您可以提供语法错误消息,这可能有助于进一步调查 您好,Shavi,我尝试了这个方法,但在我的xml代码中得到的不是我的值:。我不确定您的文件的内容,但似乎您可能需要在该对象中导航以找到您要查找的值。。。Try:
将inspect导入为inspect
inspect.getmembers(您的对象)代码>变量“s”在“yourObject”的什么位置或在什么位置。这应该会显示对象中可用的所有方法和变量。嗨,Shavi,我尝试了这一点,但在我的xml代码中得到的不是我的值:。我不确定文件的内容,但您可能需要在该对象中导航以找到您要查找的值。。。Try:将inspect导入为inspect
inspect.getmembers(您的对象)代码>变量“s”在“yourObject”的什么位置或在什么位置。这应该显示对象中可用的所有方法和变量。