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
<p>将<code>count = global ctr</code>更改为</p> <pre><code>global ctr count = ctr </code></pre> <p>看看这样行不行</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
jupyter运行一个旧的pytorch版本
7 回答
Jupyter运行不同版本的卸载库?
5 回答
Jupyter运行指定的键盘快捷键
6 回答
Jupyter通过.local文件“逃逸”virtualenv。我该如何缓解这种情况?
3 回答
Jupyter重新加载自定义样式
1 回答
Jupyter错误:“没有名为Jupyter_core.paths的模块”
10 回答
jupyter错误:无法在随机林中将决策树视为png
2 回答
Jupyter错误'内核似乎已经死亡,它将自动重新启动'为一个给定的代码块
7 回答
Jupyter错误地用阿拉伯语和字母数字元素显示Python列表
7 回答
Jupyter隐藏数据帧索引,但保留原始样式
7 回答
Jupyter集线器:启动器中出现致命错误。。。系统找不到指定的文件
9 回答
Jupyther中相同值的相同哈希,但导出到Bigquery时不相同
6 回答
Jupy上Python的读/写访问问题
9 回答
jupy上没有模块cv
3 回答
Jupy上的排序错误
4 回答
Jupy中bqplot图形的紧凑布局
7 回答
Jupy中matplotlib plot的连续更新
7 回答
Jupy中Numpy函数的文档
9 回答
Jupy中Pandas的自动完成问题
9 回答
jupy中Qt后端的Matplotlib动画
10 回答