1. Python / Говнокод #24164

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    def create_delta(self, timestamp, subs: set):
        sym_subs = subs.symmetric_difference(self.subs)
        added_subs = sym_subs.difference(self.subs)
        removed_subs = sym_subs.difference(subs)
        return DeltaEntry(timestamp, added_subs, removed_subs)

    gost, 21 Апреля 2018

    Комментарии (1)
  2. Python / Говнокод #24129

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    def calc ( x ) :
        if type ( x ) is not list :
            return x
        if len ( x ) == 0 :
            return x
        while type ( x [ 0 ] ) is list :
            x = x [ 0 ] + x [ 1: ]
        c = x [ 0 ]
        print ( x )
        if c == 'I' :
            if len ( x ) <= 1 :
                return x
            return calc ( x [ 1: ] )
        elif c == 'K' :
            if len ( x ) <= 2 :
                return x
            return calc ( [ x[1] ] + x [ 3: ] )
        elif c == 'W' :
            if len ( x ) <= 2 :
                return x
            return calc ( x[1:3] + x[ 2: ] )
        elif c == 'S' :
            if len ( x ) <= 3 :
                return x
            return calc ( [ x[1] , x [3] , [ x[2] , x[3] ] ] + x [ 4: ] )
        elif c == 'B' :
            if len ( x ) <= 3 :
                return x
            return calc ( [ x[1] , [ x[2] , x[3] ] ] + x[4:] )
        elif c == 'C' :
            if len ( x ) <= 3 :
                return x
            return calc ( [ x[1] , x[3] , x[2] ] + x[ 4 : ] )
        return [ c ] + calc ( x [ 1: ] )
    
    
    def parse ( s , n = 0 ) :
      res = []
      i = n
      while i < len ( s ) :
        if s [ i ] == '(' :
          t = parse ( s , i + 1 )
          res.append ( t [ 0 ] )
          i = t [ 1 ] - 1
        elif s [ i ] == ')' :
          return ( res , i + 1 )
        else :
          res.append ( s [ i ] )
        i += 1
      return ( res , i )
    
    print ( '>> ' , end = '' )
    while True :
        for i in calc ( parse ( input() ) [ 0 ] ) :
            print ( i , end = '' )
        print ( '\n>> ' , end = '' )

    Вычисляэ комбинаторныэ термы, и выдаё промежности, типа:

    >> S(SKK)(SKK)x
    ['S', ['S', 'K', 'K'], ['S', 'K', 'K'], 'x']
    ['S', 'K', 'K', 'x', [['S', 'K', 'K'], 'x']]
    ['K', 'x', ['K', 'x'], [['S', 'K', 'K'], 'x']]
    ['x', [['S', 'K', 'K'], 'x']]
    ['S', 'K', 'K', 'x']
    ['K', 'x', ['K', 'x']]
    ['x']
    xx

    yet_another_one_shit, 16 Апреля 2018

    Комментарии (36)
  3. Python / Говнокод #24102

    −2

    1. 1
    2. 2
    3. 3
    editText_url = tk.Entry(root)
    editText_url.bind(SEQ_FOCUS_IN, lambda e: editText_url.delete('0', 'end') if editText_url.get() == url_placeholder else "")
    editText_url.bind(SEQ_FOCUS_OUT, lambda e: editText_url.insert(0, url_placeholder) if len(editText_url.get()) == 0 else "")

    В tkinter нет EditText с плейсхолдером, выкручиваемся как можем!
    А еще в лямбде нельзя использовать if, зато можно тернарный оператор. `else` здесь беесполезен~

    saber-nyan, 10 Апреля 2018

    Комментарии (25)
  4. Python / Говнокод #24030

    +1

    1. 1
    y = deepcopy(np.array(np.matrix(self.data['mg']).flatten().tolist()[0]))

    Преобразование колонки Pandas DataFrame в NumPy Array. Люблю машинное обучение.

    mizabrik, 28 Марта 2018

    Комментарии (1)
  5. Python / Говнокод #24021

    +3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    class _automodule(types.ModuleType):
        """Automatically import lexers."""
    
        def __getattr__(self, name):
            info = LEXERS.get(name)
            if info:
                _load_lexers(info[0])
                cls = _lexer_cache[info[1]]
                setattr(self, name, cls)
                return cls
            raise AttributeError(name)
    
    
    oldmod = sys.modules[__name__]
    newmod = _automodule(__name__)
    newmod.__dict__.update(oldmod.__dict__)
    sys.modules[__name__] = newmod
    del newmod.newmod, newmod.oldmod, newmod.sys, newmod.types

    Динамичненько!

    syoma, 28 Марта 2018

    Комментарии (52)
  6. Python / Говнокод #24006

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    #Seeing already precalculated answers... fills you with DETERMINATION
    
    ref = [0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 
    #9000 элементов массива спустя...
    1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
    
    i = int(input())
    print(ref[i - 1000])

    fedor2612, 26 Марта 2018

    Комментарии (1)
  7. Python / Говнокод #23973

    −2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    def chicken():
    	print("Курица")
    	return egg()
    
    def egg():
    	print("Яйцо")
    	return chicken()
    
    try:
    	chicken()
    except RecursionError:
    	print("ТЫ ПИДОР")

    ScythepX, 21 Марта 2018

    Комментарии (2)
  8. Python / Говнокод #23939

    −2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    assert exec("from my_runtime_analyze_lib import do_amazing_magic") or True
    
    
    if __name__ == '__main__':
        do_smth()
        assert do_amazing_magic()
        do_smth_else()

    Как вхерачить в код любую ересь для dev окружения, а потом отключить на продакшене. Только не забыть бы на проде при запуске флаг оптимизации.

    intestinalbrain, 16 Марта 2018

    Комментарии (5)
  9. Python / Говнокод #23921

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    Pyhton 2:
    >>> (2**54/1) + 10 - 10 == 2**54
    True
    
    >>> (2**64/1) + 10  == 2**64
    False
    
    Pyhton 3:
    
    >>> (2**54/1) + 10 - 10 == 2**54
    False
    
    >>> (2**64/1) + 10  == 2**64
    True

    Pyhton 2: https://ideone.com/iqwl8L
    Pyhton 3: https://ideone.com/ltG9Fq

    Ну охуеть теперь.
    x + 10 - 10 != x в общем случае - это норма?
    Я всё понимаю - тяжёлое детство, инты, прибитые к железу, но на кой чёрт в современных интерпретируемых языках такое говнище?

    3.14159265, 13 Марта 2018

    Комментарии (30)
  10. Python / Говнокод #23682

    +1

    1. 1
    OrderedDict().fromkeys(['key1', 'key2', 'key3'], [])

    Снова сел на грабли с изменяемыми объектами

    syoma, 29 Января 2018

    Комментарии (6)