擅长:python、mysql、java
<p>这里您看到的是一个具有两次<em>切片语法</em>的函数。对于支持<em>切片</em>语法的对象,可以编写:</p>
<pre><code>object[f:t]
</code></pre>
<p>具有<code>f</code>和<code>t</code>索引。然后得到一个子序列,该子序列以<code>f</code>开始,以<code>t</code>结束(<code>t</code>是独占的)。如果<code>f</code>或<code>t</code>没有提供,那通常意味着我们从开始到结束进行切片。你知道吗</p>
<p>你问题中的函数有点神秘,实际上相当于:</p>
<pre><code>def get_extn(filename):
f = filename.rfind('.')
filename = filename[f:]
return filename[1:]
</code></pre>
<p>首先我们得到最后一个点的索引,然后我们构造一个从<code>f</code>开始的子串,最后我们从索引1开始的子串构造一个子串(这样就删除了第一个字符,它是<code>'.'</code>)。你知道吗</p>