擅长:python、mysql、java
<p>为什么不使用dict来更新脚本的局部变量呢?你知道吗</p>
<pre><code>with open('ProjectEuler11Data.txt') as numbers:
data = numbers.readlines()
d = {}
for i,line in enumerate(data):
d["line"+str(i)] = line.split()
locals().update(d)
</code></pre>
<p>这样,您就可以在脚本的范围内使用<code>lineX</code>。
为了解释:
在python中,一切(几乎)都是一个对象,每个对象都有一个dict和定义它的变量,一个类在dict中有<code>self</code>属性,例如函数。即使模块或脚本的变量存储在字典中,您也可以通过<code>globals()</code>访问外部作用域可以访问的全局变量的dict,或者通过<code>locals()</code>访问内部作用域中的变量的dict。由于它存储在字典中,所以您可以像管理它一样管理它,调用任何其他字典对象可用的任何方法。例如:</p>
<pre><code>locals()["myVariable"] = 5
</code></pre>
<p>正在创建变量<code>myVariable</code>,该变量在模块的作用域中存储<code>5</code>。你知道吗</p>