ちょいと学習してた際に普段あんまり使わなくて知らなった使い方やら書き方やらがあったのでメモがてら残しておく。
ただ、普段使わないだけあって、count以外はどういうときに使うと効果的なのかが全然思いつかない。。
リスト内の数を数える
リスト内の要素の件数などはlenでよく出力したりするが、重複している要素の数を出力できることは知らなかった
num_list = [2, 4, 6, 4, 4, 2, 6]
for i in range(num_list.count(4)):
print(i, end=' ')
上記だと、リスト内の4の数をrangeに食わせているので、range(3)と同じことになる
参考:https://note.nkmk.me/python-collections-counter/
出力結果に対して表示制限を加える
import reprlib
list_sample = [i for i in range(100)]
reprlib.repr(list_sample)
そのまま出力すると0から99までがそのまま出力されるけど、表示に制限を加えることができるのでこんな感じになる
[0, 1, 2, 3, 4, 5, ...]
参考:https://docs.python.org/ja/3.5/library/reprlib.html
クラスの属性を確認できる
os.listdirとかはよく使うけど、似たようなものでビルド関数のdirがある。
似てるくせにできることは全然違う。
class SampleClass:
attr_int_A = 10000
attr_str_B = 'sample Str'
for attr in dir(SampleClass()):
if attr.startswith('__'): # __ 始まりはスキップ
continue
print(attr)
attr_int_A
attr_str_B