2023-07-24 22:31:00 +02:00
|
|
|
|
import re
|
|
|
|
|
import numpy as np
|
|
|
|
|
|
2023-07-14 17:15:56 +02:00
|
|
|
|
def verify(message, expected, actual):
|
2023-07-17 15:12:09 +02:00
|
|
|
|
a = "========================="
|
|
|
|
|
print(a)
|
2023-07-14 17:15:56 +02:00
|
|
|
|
print(message)
|
|
|
|
|
if actual != expected:
|
2023-07-17 15:12:09 +02:00
|
|
|
|
print("FAILED!")
|
|
|
|
|
print(a)
|
|
|
|
|
return False
|
2023-07-14 17:15:56 +02:00
|
|
|
|
else:
|
2023-07-17 15:12:09 +02:00
|
|
|
|
print("SUCCESS!")
|
|
|
|
|
print(a)
|
|
|
|
|
return True
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2023-07-23 21:40:56 +02:00
|
|
|
|
def verify_all(dataset):
|
|
|
|
|
summa_success = int()
|
|
|
|
|
summa_failed = int()
|
|
|
|
|
for result in dataset:
|
2023-07-24 11:25:33 +02:00
|
|
|
|
if verify(result[0], result[1], result[2]):
|
2023-07-23 21:40:56 +02:00
|
|
|
|
summa_success += 1
|
2023-07-23 22:00:04 +02:00
|
|
|
|
else:
|
|
|
|
|
summa_failed += 1
|
2023-07-23 21:40:56 +02:00
|
|
|
|
print("Total:", len(dataset), "Successful:", summa_success, "Failed:", summa_failed)
|
|
|
|
|
return True
|
2023-07-17 15:12:09 +02:00
|
|
|
|
|
2023-07-23 21:40:56 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def min_array(array):
|
|
|
|
|
min = array[0]
|
|
|
|
|
for i in array:
|
|
|
|
|
if i < min:
|
|
|
|
|
min = i
|
|
|
|
|
return min
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def max_array(array):
|
|
|
|
|
max = array[0]
|
|
|
|
|
for i in array:
|
2023-07-24 11:25:33 +02:00
|
|
|
|
if i > max:
|
|
|
|
|
max = i
|
2023-07-23 21:40:56 +02:00
|
|
|
|
return max
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2023-07-24 22:31:00 +02:00
|
|
|
|
def word_count(text):
|
|
|
|
|
c = []
|
|
|
|
|
final = {}
|
|
|
|
|
a = re.sub("[^А-Яа-я-A-Z-a-z ]", "", text).lower()
|
|
|
|
|
b = str(a).split()
|
|
|
|
|
c = list(b)
|
|
|
|
|
unique_array, count_array = np.unique(c, return_counts=True)
|
|
|
|
|
final = zip(unique_array, count_array)
|
|
|
|
|
final2 = list(final)
|
|
|
|
|
return final2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
f = 'Я пришел, я ушел, я нашел'
|
|
|
|
|
|
|
|
|
|
array = [2, 3, 5, 8, 89, 65, 75, 7895, 2, 1, 1]
|
2023-07-23 21:40:56 +02:00
|
|
|
|
|
|
|
|
|
|
2023-07-24 22:31:00 +02:00
|
|
|
|
dataset = [("Test1", 3, min_array(array)), ("Test2", 7895, max_array(array)),
|
|
|
|
|
("Test3", [('нашел', 1), ('пришел', 1), ('ушел', 1), ('я', 3)], word_count(f))]
|
2023-07-23 21:40:56 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
verify_all(dataset)
|