LoginSignup
1
1

More than 1 year has passed since last update.

あまり知らなかったPythonの使い方

Posted at

ちょいと学習してた際に普段あんまり使わなくて知らなった使い方やら書き方やらがあったのでメモがてら残しておく。
ただ、普段使わないだけあって、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

参考:https://python.keicode.com/refs/dir-function.php

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1