вівторок, 28 жовтня 2014 р.

практика Кодекадеми:
1) написать йф-цию, которая ищет в тексте слово и меняет его на звездочки (екзасмпл: при инпуте censor("this hack is wack hack", "hack"должно вывести "this **** is wack ****").

Done!)))

def censor(text, word):
    ast = []
    for i in range(len(text)):
        ast.append(text[i])
    for i in range(len(text)):
         if text[i:i+len(word)] == word:
            for n in range(i, i+len(word)):
                ast[n] = "*"
    return "".join(ast)

print censor("this hack is wack hack", "hack")

2) посчитать сколько раз заданный элемент встречается в списке:

Done!)))

def count(sequence, item):
    count = 0
    for i in sequence:
        if i == item:
            count += 1
    return count
print count([1,2,1,1], 1) ==> 3

3) отфильтровать в списке все нечетные:

Done!)))

def purify(lst):
    res = []
    for i in lst:
        if i % 2 == 0:
            res.append(i)
    return res
print purify([1,2,3]) ==> [2]

4) найти произведение эелементов спискка (это уже както эелементарно с первого раза получается, уже не занятно становится)

def product(lst):
    res = 1
    for i in lst:
        res *= i
    return res
print product([4, 5, 5]) ==> 100

5) убрать дубликаты из списка (порядок неважен)

def remove_duplicates(lst):
    res = []
    for i in lst:
        if i not in res:
            res.append(i)
    return res
print remove_duplicates([1,1,2,2]) ==> [1,2]

6) найти медиану ряда

def median(lst):
    lst = sorted(lst)
    if len(lst) % 2 == 0:
        med = float(lst[len(lst)/2 - 1] + lst[len(lst)/2])/2
    else:
        med = lst[(len(lst)-1)/2]
    return med
print median([5, 4, 5, 4])

I`v earned a badge!)
    

Немає коментарів:

Дописати коментар