1

たとえば、リストがある場合

C=''
B='apple'
A=['a','b','c','d','e']

そのリスト内の文字が「apple」という単語に含まれているかどうかを確認し、ユーザーにどの文字が含まれているかを示し、リストに表示されていない各文字に「-」を表示するにはどうすればよいでしょうか。たとえば、apple は a---e になります。みたいな事になると思ってた…

for item in A:
     if item in B:
          C+=item
     else:
          C+='-'
print(C)

しかし、私はそれを理解することはできません。どんな助けでも大歓迎です。

4

1 に答える 1

8
>>> B = 'apple'
>>> A = ['a','b','c','d','e']
>>> print ''.join(c if c in B else '-' for c in A)
a---e

これは、次のforループと同等です。

>>> s = ''
>>> for c in A:
        if c in B:
            s += c
        else:
            s += '-'


>>> print s
a---e
于 2013-04-14T21:32:50.427 に答える