擅长:python、mysql、java
<p>您试图下载的存档文件没有顶级文件。
归档文件由一个名为<code>globalize-master</code>的目录组成,该目录包含所有文件,因此您看到的行为是正确的。在</p>
<p>如果使用<code>unzip</code>提取内容,您将看到相同的行为:</p>
<pre><code>$ls
globalize-master.zip
$unzip globalize-master.zip
Archive: globalize-master.zip
300a9dc6cb4a08eb847c8565ee01eae4cd9aa35c
creating: globalize-master/
extracting: globalize-master/.bowerrc
[...]
inflating: globalize-master/test/util.js
$ls -l
totale 116
drwxrwxr-x 5 username username 4096 lug 13 07:35 globalize-master
-rw-r r 1 username username 113313 lug 21 12:44 globalize-master.zip
</code></pre>
<hr/>
<p>从源代码中可以很清楚地看到,<code>unzip</code>函数对文件名所做的一切都是无用的,因为它已经由<code>ZipFile.extract</code>处理。
<code>unzip</code>的正确版本是:</p>
^{pr2}$
<p>从而产生预期的产出。在</p>
<p>请注意,这相当于使用<a href="https://docs.python.org/2/library/zipfile.html#zipfile.ZipFile.extractall" rel="nofollow">^{<cd6>}</a>方法:</p>
<pre><code>def unzip(source_filename, dest_dir):
with zipfile.ZipFile(source_filename) as zf:
zf.extractall(dest_dir)
</code></pre>