In [41]:
# Попытка решить проблему выбора языка программирования
# Выполнять скрипт до получения желаемого результата

import random, collections
langs = 'ruby js node c python'.split()

choices = [random.choice(langs) for _ in range(1000000)]
collect = collections.Counter(choices)

for k in sorted(collect):
    print('{}\t->\t{}'.format(k, collect[k]), end='')
    if collect[k] == max(collect.values()):
        print('\t{}'.format('!'*3), end='')
    print()


c	->	199554
js	->	199165
node	->	200283
python	->	200653	!!!
ruby	->	200345

In [21]:
# Чем же верхний вариант лучше вот этого?

import random
print(random.choice('ruby js node c'.split()))

# Так то, конечно, ничем, но там мы делаем выборку, и смотрим распределение.
# Нельзя назвать эти результаты объективными, зато есть хоть какие то результаты.
# Если есть другие предложения - предлагайте.


ruby

In [14]:
# Однорукий бандит
# Те же яйца, только сбоку.

import random, collections
langs = 'ruby js node c python'.split()

choices = [random.choice(langs) for _ in range(3)]
if choices[1] == choices[2] == choices[0]:
    print(choices[0])
else:
    print('Can\'t choice')


ruby

In [39]:
# Одномерная проползающая змейка
# Почему циклы не симетричны? Да хз, но иначе не работает.

import time, threading

def snake(length, speed):
    for i in range(length):
        print('.'*i, end='')
        time.sleep(speed)
        print('\r', end='')
    for i in range(length):
        print(' '*i, end='\r')
        time.sleep(speed)

threading.Thread(target=snake, args=(20, 0.3)).start()


          ......... 

In [542]:
# Один из 25

import random, collections

seq = [0 for _ in range(24)]
seq.append(1)
random.shuffle(seq)

# Сложно пройти? Раскомментируй
# for j in zip([i for i in range(len(seq))], seq):
#     if j[1] == 1:
#         print(j[0])
        

inp = input('? ')
if inp != '' and inp.isdigit():
    inp = int(inp)
else:
    inp = random.randint(0,len(seq))
    
if seq[inp % len(seq)] == 1:
    print('^_^')
else:
    print('(.)')


9
? 9
^_^