Я иногда пытался применить определённую функцию к спискам и у меня ничего не получалось. На экране появлялась ошибка и я не сразу понимал что нужно делать. Нужно знать какая функция применяется к объекту (список, строка, множество, словарь) с учётом типа данных. Если всё помните большое количество внутренних функций наизусть, то это очень хорошо ). Что делать если вы еще не запомнили большой список функций? Вам поможет функция dir для определения списка функций. Функция выведет все функции для работы с объектом. Это удобно. Вам не нужно пользоваться поисковиками. Раньше программисты писали: "Как добавить в список элемент". Посмотрите на пример.
#!/usr/bin/python3
#список
list = [1,2,3]
arr_function = dir(list)
print(arr_function)
'''
вывод:
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', \
'__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', \
'__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', \
'__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', \
'__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', \
'__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index',\
'insert', 'pop', 'remove', 'reverse', 'sort']
'''
#кортеж
tuple = (1,2,3)
#словарь
dict = {'param':1,'param':2,}
#множество
set = {1,2,3}
#строка
str = 'string'
def search_function(obj):
'''
функция показывает все функции для
работы с этим объектом
получается список всех функции,
все что содержит __ нижнее подчеркивание отбрасывается
'''
print('-' * 10, type(obj), '-' * 10)
obj = dir(obj)
for x in obj:
if(x[0:2] != '__'):
print('функция:', x)
#список
search_function(list)
'''
вывод:
функция: append
функция: clear
функция: copy
функция: count
функция: extend
функция: index
функция: insert
функция: pop
функция: remove
функция: reverse
функция: sort
'''
#кортеж
search_function(tuple)
'''
вывод:
функция: count
функция: index
'''
#словарь
search_function(dict)
'''
вывод:
функция: clear
функция: copy
функция: fromkeys
функция: get
функция: items
функция: keys
функция: pop
функция: popitem
функция: setdefault
функция: update
функция: values
'''
#множество
search_function(set)
'''
вывод:
функция: add
функция: clear
функция: copy
функция: difference
функция: difference_update
функция: discard
функция: intersection
функция: intersection_update
функция: isdisjoint
функция: issubset
функция: issuperset
функция: pop
функция: remove
функция: symmetric_difference
функция: symmetric_difference_update
функция: union
функция: update
'''
#строка
search_function(str)
'''
вывод:
функция: capitalize
функция: casefold
функция: center
функция: count
функция: encode
функция: endswith
функция: expandtabs
функция: find
функция: format
функция: format_map
функция: index
функция: isalnum
функция: isalpha
функция: isdecimal
функция: isdigit
функция: isidentifier
функция: islower
функция: isnumeric
функция: isprintable
функция: isspace
функция: istitle
функция: isupper
функция: join
функция: ljust
функция: lower
функция: lstrip
функция: maketrans
функция: partition
функция: replace
функция: rfind
функция: rindex
функция: rjust
функция: rpartition
функция: rsplit
функция: rstrip
функция: split
функция: splitlines
функция: startswith
функция: strip
функция: swapcase
функция: title
функция: translate
функция: upper
функция: zfill
'''