擅长:python、mysql、java
<p><code>{}[]</code>意味着检查字典中的某个键,如果找到该键,则返回该键</p>
<pre><code>str2int = {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7':7, '8': 8, '9': 9}
get_3 = str2int['3']
print(get_3)
>>> 3
</code></pre>
<p>如果您尝试这样做,它基本上与将字典分配给标识符/变量并访问键相同</p>
<pre><code>get_3 = str2int['10']
</code></pre>
<p>您会得到一个<code>KeyError</code>,说明字典中不存在特定的键</p>
<p>至于函数的一般映射一般是用来将一个函数的运算应用于一个iterable</p>
<pre><code>map(aFunction, aSequence)
</code></pre>
<p>记住python中的字符串是iterable,因此映射返回相应的字典值</p>
<p>Reduce的工作原理是将函数应用于iterable,直到它返回单个值(例如,将此列表或iterable缩减为单个值)</p>
<p>例如,如果用字符串调用函数</p>
<pre><code>str2int('234')
</code></pre>
<p>映射遍历字符串并将其映射到字典中的值,然后返回一个列表</p>
<pre><code>[2, 3, 4]
</code></pre>
<p>之后reduce将前两个参数作为<code>x and y</code>并应用什么操作<code>x * 10 + y</code>并调用它,直到它只是一个值,所以在第一次调用时</p>
<pre><code>2 * 10 + 3 = [23, 4]
</code></pre>
<p>第二次呼叫</p>
<pre><code>23 * 10 + 4 = [234]
</code></pre>
<p>所以我们现在有一个值,最后在函数末尾返回值234,您可以使用函数的内部逻辑来习惯这个概念</p>