مقایسه دسترسی به عضو شیء دنباله‌ای در پایتون

بخاطر چگونگی اسستن [؟ آوایش: [[و:اسستن|آواثاء:اسستن]] 📥؛ معنی «اسستن» به فارسی «معناء:اسستن/ا» و معادل «اسستن» به انگلیسی «عدلاء:اسستن» است] نوع-داده‌ها، سریعترین نوع-داده‌ها برای عضوجدن ([؟] معناء:عضوجدن [آوایش: [[و:عضوجدن|آواثاء:عضوجدن]]؛ تلفظ «عضوجدن»: 📥]) بترتیب، بدینشکل ([؟] معناء:بدینشکل [آوایش: [[و:بدینشکل|آواثاء:بدینشکل]]؛ تلفظ «بدینشکل»: 📥]) ئَد ([؟] معناء:ئَد [آوایش: [[و:ئدن|آواثاء:ئَد]]؛ تلفظ «ئدن»: 📥]):

  • set
  • tuple
  • list
import string
import time

def membership_test(n, container):
    for i in range(n):
        result = 'z' in container

times = 10_000_000

char_set = set(string.ascii_letters)
char_tuple = tuple(string.ascii_letters)
char_list = list(string.ascii_letters)

start = time.perf_counter()
membership_test(times, char_set)
end = time.perf_counter()
print('set:\t', end - start)

start = time.perf_counter()
membership_test(times, char_tuple)
end = time.perf_counter()
print('tuple:\t', end - start)

start = time.perf_counter()
membership_test(times, char_list)
end = time.perf_counter()
print('list:\t', end - start)
خروجی
set:	 0.3922013800001878
tuple:	 4.346737645999838
list:	 4.567123546999937