Python にファイル名があり、すべてのファイル名からlist
を作成したいと考えています。set
filelist=[]
for filename in filelist:
set(filename)
これは機能しないようです。どうすればいいでしょうか?
ベストアンサー1
ハッシュ可能なオブジェクトのリストがある場合 (ファイル名はおそらく文字列なので、カウントされるはずです):
lst = ['foo.py', 'bar.py', 'baz.py', 'qux.py', Ellipsis]
セットを直接構築することもできます:
s = set(lst)
実際、反復可能なオブジェクトset
であれば、この方法で動作します。 (ダックタイピングは素晴らしいと思いませんか?)
繰り返し実行したい場合:
s = set()
for item in iterable:
s.add(item)
しかし、このように行う必要はほとんどありません。このset.add
方法は非常に便利なので、ここで言及しただけです。