次のようなファイル名を含む文字列のリストがあります。
file_names = ['filei.txt','filej.txt','filek.txt','file2i.txt','file2j.txt','file2k.txt','file3i.txt','file3j.txt','file3k.txt']
.txt
次に、次を使用して拡張機能を削除します。
extension = os.path.commonprefix([n[::-1] for n in file_names])[::-1]
file_names_strip = [n[:-len(extension)] for n in file_names]
そして、リスト内の各文字列の最後の文字を返しますfile_names_strip
:
h = [n[-1:] for n in file_names_strip]
どちらが与えるh = ['i', 'j', 'k', 'i', 'j', 'k', 'i', 'j', 'k']
の文字列のパターンをテストするにはどうすればよいh
ですか? したがって、i
、j
、k
が連続して発生する場合、そうでない場合は True と False を返します。すべてのファイル名が のようにフォーマットされているわけではないため、これを知る必要がありますfile_names
。
そう:
test_ijk_pattern(h) = True
no_pattern = ['1','2','3','1','2','3','1','2','3']
test_ijk_pattern(no_pattern) = False