Dmitry Telenkov 3 년 전
부모
커밋
594003c15d
2개의 변경된 파일69개의 추가작업 그리고 9개의 파일을 삭제
  1. 69 9
      misc.py
  2. 0 0
      squqre_sum.py

+ 69 - 9
misc.py

@@ -68,6 +68,8 @@ def find_even_index(arr):
 # print(find_even_index([1,2,3,4,5,6]))
 # print(find_even_index([1,2,3,4,5,6]))
 
 
 # ------------------------------------------------------------------------------- #
 # ------------------------------------------------------------------------------- #
+# Задачка на работу с boxplot 
+# Пока не завершил.
 
 
 class StatisticalSummary(object):
 class StatisticalSummary(object):
 
 
@@ -134,24 +136,82 @@ class StatisticalSummary(object):
             print(q1)
             print(q1)
             print(q3)
             print(q3)
             return q1, q3
             return q1, q3
+        
 
 
-
-
-data = list(range(1, 33)) + list(range(12, 21)) + list(range(12, 21)) + list(range(12, 21)) + [16]
-d1 = list(range(1, 33)) + list(range(12, 21)) + list(range(12, 21)) + list(range(12, 21)) + [16]
+# data = list(range(1, 33)) + list(range(12, 21)) + list(range(12, 21)) + list(range(12, 21)) + [16]
+# d1 = list(range(1, 33)) + list(range(12, 21)) + list(range(12, 21)) + list(range(12, 21)) + [16]
 
 
 # print(data)
 # print(data)
 
 
 # d1 = range(1, 33) + range(12, 21) + range(12, 21) + range(12, 21) + [16]
 # d1 = range(1, 33) + range(12, 21) + range(12, 21) + range(12, 21) + [16]
-d2 = [d - 2 for d in d1[:len(data)//2]] + [d + 2 for d in d1[len(data)//2:]]
-data2 = [("A", n) for n in d1] + [("B", n) for n in d2]
+# d2 = [d - 2 for d in d1[:len(data)//2]] + [d + 2 for d in d1[len(data)//2:]]
+# data2 = [("A", n) for n in d1] + [("B", n) for n in d2]
 
 
 
 
 
 
 # print(data2)
 # print(data2)
 # print(type(data2))
 # print(type(data2))
 # print(d2)
 # print(d2)
-test_list = [1, 2, 5, 2, 3, 'asdfasd', 2, 3, 12, 45, 3, 6, 25, 54, 32, 12, 14]
+# test_list = [1, 2, 5, 2, 3, 'asdfasd', 2, 3, 12, 45, 3, 6, 25, 54, 32, 12, 14, 2]
+
+# summary1 = StatisticalSummary(test_list)
+# summary1.boxplot()
+
+# ------------------------------------------------------------------------------- #
+
+def is_valid_walk(walk):
+    horizontl = 0
+    vertical = 0
+    for i in walk:
+        if i == 'n':
+            vertical += 1
+        elif i == 's':
+            vertical -= 1
+        elif i == 'w':
+            horizontl -= 1
+        elif i == 'e':
+            horizontl += 1
+    
+    return vertical == 0 and horizontl == 0 and len(walk) == 10
+    
+
+# Решение через метод count
+# def isValidWalk(walk):
+    # return len(walk) == 10 and walk.count('n') == walk.count('s') and walk.count('e') == walk.count('w')
+
+# print(is_valid_walk(['w','e','w','e','w','e','w','e','w','e','w','e']))
+
+# ------------------------------------------------------------------------------- #
+
+# На входе одно число из массив четное или нечетно. Нужно его найти и вернуть.
+def find_outlier(integers):
+    types = []
+
+    def is_even(value):
+        return value%2 == 0
+
+    for i in integers:
+        types.append(is_even(i))
+    
+    if types.count(True) > types.count(False):
+        return integers[types.index(False)]
+    else:
+        return integers[types.index(True)]
+
+
+# Более короткое решение
+# def find_outlier(int):
+    # odds = [x for x in int if x%2!=0]
+    # evens= [x for x in int if x%2==0]
+    # return odds[0] if len(odds)<len(evens) else evens[0]
+
+
+# print(find_outlier([2, 4, 0, 100, 4, 11, 2602, 36]))
+
+# ------------------------------------------------------------------------------- #
+
+# В переданной строке должно быть только 4 или 6 цифр       
+def validate_pin(pin):
+    return len(pin) in (4, 6) and pin.isdigit()
 
 
-summary1 = StatisticalSummary(test_list)
-summary1.boxplot()
+# print(validate_pin('-234'))

+ 0 - 0
squqre_sum.py