<p>对于python,我正在编写使用<code>os.rename()</code>重命名文件的代码</p>
<p>到目前为止我所拥有的:</p>
<pre><code>[os.rename(f, f.replace('New', '-'))
for f in os.listdir('.') if not f.startswith('.')]
</code></pre>
<p>我要做的是从<code>C:\Users\MyName\Desktop\pythonVSC</code>到<code>C:\Users\MyName\Desktop\pythonVSC\forTest</code>并将<code>New</code>的所有情况改为<code>-</code></p>
<p>在<code>forTest</code>中,我有两个<code>.txt</code>文件名<code>New</code>和<code>New_</code></p>
<p>我了解<code>.replace</code>做什么,<code>.listdir</code>做什么,<code>.startwith</code>也做什么。你知道吗</p>
<p>我的问题是,如果我将for语句中的<code>'.'</code>改为<code>'./somePath'</code>,我会得到如下所示的错误</p>
<pre><code>Exception has occurred: FileNotFoundError
[WinError 2] The system cannot find the file specified: 'New.txt' -> '-.txt'
File "C:\Users\MyName\Desktop\pythonVSC\rename.py", line 29, in <listcomp>
[os.rename(f, f.replace('New', '-')) for f in os.listdir('./forTest') if not f.startswith('.')]
File "C:\Users\MyName\Desktop\pythonVSC\rename.py", line 29, in <module>
[os.rename(f, f.replace('New', '-')) for f in os.listdir('./forTest') if not f.startswith('.')]
</code></pre>
<p>我试着用<code>os.listdir('forTest')</code>,<code>os.listdir('C:\Users\MyName\Desktop\pythonVSC\forTest')</code>和其他任何变体来替换<code>os.listdir('.')</code></p>
<p>我在这里做什么?你知道吗</p>