擅长:python、mysql、java
<p>可以使用正则表达式:</p>
<pre><code>import re
list1 = ["Vaporeon", "Jolteon", "Flareon", "Espeon", "Umbreon", "Leafeon", "Glaceon", "Sylveon"]
s = input() # for example "V...r..n"
re_s = re.compile(''.join('.' if ch == '.' else re.escape(ch) for ch in s) + '$')
for i in list1:
if re_s.match(i):
print(i)
</code></pre>
<p>编辑:其他答案中似乎缺少的另一个选项是使用<code>itertools.zip_longest</code>:</p>
<pre><code>from itertools import zip_longest
list1 = ["Vaporeon", "Jolteon", "Flareon", "Espeon", "Umbreon", "Leafeon", "Glaceon", "Sylveon"]
s = input() # for example "V...r..n"
for i in list1:
if all(c1 == c2 for c1, c2 in zip_longest(i, s) if c2 != '.'):
print(i)
</code></pre>