擅长:python、mysql、java
<p>不要使用<code>random.choice</code>,而是使用<a href="https://docs.python.org/3/library/random.html#random.sample" rel="noreferrer">^{<cd2>}</a>从目录列表中获取10个元素。这样做的好处是您只需要调用<code>os.listdir</code>一次,而不需要循环10次来选择一个新的随机元素。它还将始终为您提供不同的元素,因此您不会试图移动同一个文件两次。在</p>
<p>要处理少于10个文件的情况,可以先检查目录列表的长度。我们可以很好地做到这一点,只需得到最少的10个元素或列表的长度(因此最多可以得到10个元素)。在</p>
<pre><code>files = os.listdir('/home/prabh00b/dakoat_wb_script/2')
for fileName in random.sample(files, min(len(files), 10)):
path = os.path.join('/home/prabh00b/dakoat_wb_script/2', fileName)
shutil.move(path, '/home/prabh00b/dakoat_wb_script/')
</code></pre>