擅长:python、mysql、java
<p>为了指出代码中的错误,我尝试修改min。尝试一下(使用<a href="https://realpython.com/python-f-strings/" rel="nofollow noreferrer">f-string</a>和<a href="https://stackoverflow.com/questions/14507591/python-dictionary-comprehension">dict-comprehension</a>):</p>
<pre><code>dict={
"samp1":"x",
"samp2":"x",
"exp1":"x"
}
li = [F"samp{i}" for i in range(1,11)]
ex = {k:v for k, v in dict.items() if k in li}
print(ex)
</code></pre>
<p>输出:</p>
<pre><code>{'samp1': 'x', 'samp2': 'x'}
</code></pre>
<p>另一个(感谢@OlvinRoght的<code>isDecimal</code>):</p>
<pre><code>dict = {
"samp1":"x",
"samp2":"x",
"samp12":"x",
"samp":"x",
"sampxyz":"x",
"exp1":"x"
}
ex = {k:v for k, v in dict.items() if k.startswith("samp") and k[4:].isdecimal() and (0 < int(k[4:]) <= 10) }
print(ex)
</code></pre>
<p>输出:</p>
<pre><code>{'samp1': 'x', 'samp2': 'x'}
</code></pre>