Python中文
首页
教程
问答
标签
搜索
登录
注册
如何在文件命名中增加计数器?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在编写xml文件,如果已经存在同名的文件,我想在xml文件名的末尾添加一个数字,因此得到:</p> <pre><code>info_for_john_0.xml info_for_john_1.xml info_for_john_2.xml </code></pre> <p>这是我目前的代码:</p> <pre><code>def pxml(listofdata): root = et.Element('INFORMATION') et.SubElement(root, 'last_name') = listofdata[0] et.SubElement(root, 'phone') = listofdata[1] et.SubElement(root, 'email') = listofdata[2] tree = et.ElementTree(root) ctr = 1 for i in tree.iter('last_name'): # should be person_id name = i.text if os.path.exists(f"info_for_{name}_{ctr}.xml") == True: tree.write(f"info_for_{name}_{ctr}.xml") ctr += 1 else: tree.write(f"info_for_{name}_{ctr}.xml") </code></pre> <p>然而,我得到的只是:</p> <pre><code>info_for_john_0.xml info_for_john_1.xml </code></pre> <p>之后就是不断地重写info\u for\ujohn\u1.xml。我怀疑这是因为我在函数中声明了ctr=1,所以每次调用它时,ctr的值都会重置为1。你知道吗</p> <p>我尝试过将ctr作为全局变量并访问,如下所示:</p> <pre><code>ctr = 1 def pxml(listofdata): root = et.Element('INFORMATION') et.SubElement(root, 'last_name') = listofdata[0] et.SubElement(root, 'phone') = listofdata[1] et.SubElement(root, 'email') = listofdata[2] tree = et.ElementTree(root) count = global ctr for i in tree.iter('last_name'): # should be person_id name = i.text if os.path.exists(f"info_for_{name}_{ctr}.xml") == True: tree.write(f"info_for_{name}_{ctr}.xml") count += 1 else: tree.write(f"info_for_{name}_{ctr}.xml") </code></pre> <p>但是我收到一个语法错误,count=global ctr是无效语法。我不确定如何访问全局变量。<strong>--编辑--</strong>解决如下问题,更改为:</p> <pre><code>global ctr count = ctr </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<pre><code>tree = et.ElementTree(root) for ctr,i in enumerate(tree.iter('last_name')): # should be person_id name = i.text tree.write(f"info_for_{name}_{ctr}.xml") </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在Excel中读取公式并将其转换为Python中的计算?
1 回答
如何在excel中读取嵌入的excel,并将嵌入文件中的信息存储在主excel文件中?
3 回答
如何在Excel中返回未知列长度的非空顶行列值?
8 回答
如何在excel中选择数据列?
8 回答
如何在Excel中通过脚本自动为一列中的所有单元格创建公共别名
3 回答
如何在excel中高效格式化范围AttributeError:“tuple”对象没有属性“fill”
8 回答
如何在excel单元格中编写python函数
3 回答
如何在excel单元格中自动执行此python代码?
8 回答
如何在excel工作表中创建具有相应值的新列
4 回答
如何在Excel工作表中复制条件为单元格颜色的python数据框?
3 回答
如何在Excel工作表中循环
8 回答
如何在excel工作表中打印嵌套词典?
6 回答
如何在excel工作表中绘制所有类的继承树?
5 回答
如何在Excel工作表中自动调整列宽?
4 回答
如何在excel工作表中追加并进一步处理
1 回答
如何在excel工作表之间进行更改?
10 回答
如何在excel或csv上获取selenium数据?
10 回答
如何在Excel或Python中将正确的值赋给正确的列
9 回答
如何在excel或python中提取单词周围的文本?
6 回答
如何在excel或python中转换来自Jira的3w 1d 4h的fromat数据?
2 回答