回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>好吧,再回到这里-</p>
<p>我有这本字典-</p>
<p>这个字典是在解析一个由注释和C结构组成的C文件之后创建的,因此对于b/w/<strong>/中包含的每个注释,都有一个与之相关的structure值是的。所以键值对是/</strong>/:{}(希望这有意义)</p>
<pre><code>{'': [], '/* JOB_ATR_depend */': ['{ ATTR_c,\n\t\tREAD_WRITE', 'ATR_DFLAG_MOM', 'ATR_DFLAG_ALTRUN,\n ATR_TYPE_STR,\n\t\tNULL_VERIFY_DATATYPE_FUNC,\n verify_value_checkpoint\n\t},'], '/* ATTR_q */': ['{ ATTR_q,\n READ_WRITE', 'ATR_DFLAG_ALTRUN', 'ATR_DFLAG_SELEQ', 'ATR_DFLAG_MOM,\n ATR_TYPE_STR,\n NULL_VERIFY_DATATYPE_FUNC,\n NULL_VERIFY_VALUE_FUNC\n },'], '/* JOB_ATR_array_indices_submitted */': ['{ ATTR_eligible_time, \n\t\tNO_USER_SET', 'ATR_DFLAG_SSET', 'ATR_DFLAG_ALTRUN,\n ATR_TYPE_LONG,\n\t\tverify_datatype_time,\n NULL_VERIFY_VALUE_FUNC\n },'], '/* JOB_ATR_eligible_time */': ['{ ATTR_u,\n\t\tREAD_WRITE', 'ATR_DFLAG_SELEQ', 'ATR_DFLAG_SCGALT,\n ATR_TYPE_ARST,\n\t\tNULL_VERIFY_DATATYPE_FUNC,\n verify_value_user_list\n },'], '/* JOB_ATR_exec_host */': ['{ ATTR_depend, \n\t\tREAD_WRITE,\n ATR_TYPE_LIST,\n\t\tNULL_VERIFY_DATATYPE_FUNC,\n verify_value_dependlist\n\t},'], '/* JOB_ATR_userlst */': ['{ ATTR_a,\n\t\tREAD_WRITE', 'ATR_DFLAG_ALTRUN,\n ATR_TYPE_LONG,\n\t\tverify_datatype_long,\n NULL_VERIFY_VALUE_FUNC\n },'], '/* JOB_ATR_exectime */': ['{ ATTR_exechost, \n\t\tREAD_ONLY,\n\t\tATR_TYPE_STR,\n\t\tNULL_VERIFY_DATATYPE_FUNC,\n NULL_VERIFY_VALUE_FUNC\n\t},'], '/* JOB_ATR_array_indices_remaining */': ['{ ATTR_array_indices_submitted, \n\t\tATR_DFLAG_SvWR', 'ATR_DFLAG_SvRD', 'ATR_DFLAG_Creat', 'READ_ONLY,\n ATR_TYPE_STR,\n\t\tNULL_VERIFY_DATATYPE_FUNC,\n verify_value_jrange\n },']}
</code></pre>
<p>现在我在读这样一个文件-</p>
<pre><code> for i in temp_file
</code></pre>
<p>即逐行处理文件,因此每当遇到这样的注释时</p>
<pre><code> if re.search('\/*',line)
</code></pre>
<p>如果这个注释和我字典里的关键字匹配,我就去查字典</p>
<pre><code> for i,j in dict.iteritems()
</code></pre>
<p>注释将替换为其相应的结构值{}</p>
<p>你知道吗例如:对于钥匙</p>
<pre><code> /* JOB_ATR_depend */
</code></pre>
<p>遇到的一个文件,我会喜欢它被替换为其相应的值</p>
<pre><code>{ ATTR_c,\n\t\tREAD_WRITE', 'ATR_DFLAG_MOM', 'ATR_DFLAG_ALTRUN,\n ATR_TYPE_STR,\n\t\tNULL_VERIFY_DATATYPE_FUNC,\n verify_value_checkpoint\n\t},
</code></pre>
<p>既然字符串在python中是不可变的,那么如何用列表替换字符串呢?你知道吗</p>