Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def text_preprocessing(text, capital=None, chars_to_remove=None):
- if capital!=None:
- if capital: text = text.upper()
- else: text = text.lower()
- if chars_to_remove:
- for i in chars_to_remove:
- text = text.replace(i,'')
- return text
- # поиск наименьшего значения в списке справа и возврат его индекса
- def rfind_min(arr, start=None):
- if not start:
- start=len(arr)
- min = arr[0]
- temp_index = int()
- for i in range(start-1,-1,-1):
- if arr[i]<min:
- min=arr[i]
- temp_index = i
- return temp_index
- # проверка индекса на минимум
- def is_min(arr, index):
- for i in arr:
- if i<arr[index]: return False
- return True
- # инкремент
- def inc(n, increment=1): return n+increment
- #cортировка по N-ному элементу вложенных массивов
- def sort_inside(arr, index=0, reverse=False):
- return sorted(arr, key=lambda x: x[index], reverse=reverse)
- #проверка индекса на максимум
- def is_max(arr, index):
- for i in arr:
- if i>arr[index]: return False
- return True
- # проверка вхождения в начало строки
- def lfind(string, any):
- if any in string[:len(any):]: return True
- return False
- # поиск внутри вложенных списков
- def find_double(arr, object, index=1):
- for i in range(len(arr)):
- if arr[i][index]==object: return i
- # просто выводит список с вложенными списками, почему нет
- # меньше лишнего кода в основном файле - лучше
- # target_length - целевая ширина столбца, round_numbers - число знаков после запятой у float при выводе
- # horizontal_char - символ, вставляющийся в пустые места ячейки, vertical_char - в конец ячейки
- def print_double_array(arr, target_length=10, round_numbers=False, horizontal_char=' ', vertical_char=''):
- for i in arr:
- for part in i:
- if isinstance(part, float) and round_numbers: part = round(part, round_numbers)
- part = str(part)
- if len(part)<target_length: part+=horizontal_char*(target_length-len(part))
- print(part, end=vertical_char)
- print()
- def makeMeAStringSuka(arr, target_length=5, round_numbers=2, horizontal_char=' ', vertical_char=''):
- string = "'''"
- for i in arr:
- for part in i:
- if isinstance(part, float) and round_numbers: part = round(part, round_numbers)
- part = str(part)
- if len(part)<target_length: part+=horizontal_char*(target_length-len(part))
- string+=part+vertical_char
- string+='\n'
- string+="'''"
- return string
- # получение алфавита и шансов для него
- def get_chances_count(text, alphabet):
- return [[text.count(alphabet[i])/len(text), alphabet[i]] for i in range(len(alphabet))]
- # получение алфавита
- def get_alphabet(text):
- return list(set(text))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement