<p>我相信您正在寻找<a href="https://docs.python.org/3/library/functions.html#enumerate" rel="nofollow noreferrer">enumerate</a>,它将为您提供从0开始计算的<code>i</code>索引以及变量名</p>
<h2>具有硬索引<code>i</code></h2>
<pre><code>dir = '/data/watkinson/Model_and_Inversion_Code/indiv_variables_output/'
file_name = ['mld_field','sp_field','lp_field','tmp_field','pz_field','sz_field','lz_field']
variable_names = ['mld','sp','lp','temp','pz','sz','lz']
variable_data = {}
for i, name in enumerate(variable_names):
variable_data[name] = np.array(nc.Dataset(dir + file_name[i] + '.nc', 'r').variables[file_name[i]][:, :, :, :],dtype=float)
</code></pre>
<p>您可以分别访问每个变量:</p>
<pre><code>print(variable_data['mld'])
print(variable_data['sp'])
...
</code></pre>
<h2>没有硬索引<code>i</code></h2>
<p>我尽量避免在可能的情况下使用硬索引。这里我们使用<a href="https://docs.python.org/3/library/functions.html#zip" rel="nofollow noreferrer">zip</a>替换枚举:</p>
<pre><code>dir = '/data/watkinson/Model_and_Inversion_Code/indiv_variables_output/'
file_name = ['mld_field','sp_field','lp_field','tmp_field','pz_field','sz_field','lz_field']
variable_names = ['mld','sp','lp','temp','pz','sz','lz']
variable_data = {}
for filename, name in zip(file_names, variable_names):
variable_data[name] = np.array(nc.Dataset(dir + file_name + '.nc', 'r').variables[file_name][:, :, :, :],dtype=float)
</code></pre>