私は Python のいくつかのチュートリアルに取り組んでおり、特定の状況で使用するデータ型/構造を決定しようとしている立場にあります。
配列、リスト、辞書、タプルの違いがよくわかりません。
どちらが適切かをどのように判断しますか - 私の現在の理解では、それらをまったく区別できません - それらは同じもののようです.
それぞれの利点/典型的なユースケースは何ですか?
このような要素を数えるのに最適なタイプは通常defaultdict
from collections import defaultdict
s = 'asdhbaklfbdkabhvsdybvailybvdaklybdfklabhdvhba'
d = defaultdict(int)
for c in s:
d[c] += 1
print d['a'] # prints 7
本当にスピード/効率が必要ですか? 次に、純粋で単純な辞書を使用します。
個人: 私は主にリストと辞書を扱っています。これで大抵の場合は満足できるようです。
場合によって は、要素をペアリング/一致させたい場合に、タプルが役立つことがあります。それ以外には、私はそれを実際には使用しません。
ただし 、すべてのバイトとすべてのメモリ/ナノ秒が重要なコアの「効率」にドリルダウンする必要のない高レベルのスクリプトを作成します。ほとんどの人がこれほど深く掘り下げる必要はないと思います。