Домашни > Man who speaks the ends of words > Решения > Решението на Силвия Земеделска

Резултати
10 точки от тестове
0 точки от учител

10 точки общо

12 успешни теста
0 неуспешни теста
Код

 1def beginning(word):
 2    w_len = len(word)
 3    
 4    if w_len % 3 == 0 or w_len % 3 == 1:
 5        return word[:w_len // 3]
 6    return word[:w_len // 3 + 1]
 7
 8
 9def middle(word):
10    w_len = len(word)
11    new_len = w_len // 3
12
13    if w_len % 3 == 0:
14        return word[new_len:new_len * 2]
15    elif w_len % 3 == 1:
16        return word[new_len:new_len * 2 + 1]
17    return word[new_len + 1:new_len * 2 + 1]
18
19
20def end(word):
21    w_len = len(word)
22    new_len = w_len // 3
23
24    if w_len % 3 == 0 :
25        return word[new_len * 2:]
26    return word[new_len * 2 + 1:]
27
28
29def split_sentence(sentence):
30    words = sentence.split()
31    result = []
32
33    for word in words:
34        result.append((beginning(word), middle(word), end(word)))
35    return result

............
----------------------------------------------------------------------
Ran 12 tests in 0.000s

OK

Дискусия
Георги Кунчев
12.10.2023 10:24

Използвай само 4 интервала за индентация. Беза табулации. За това ще отнемаме точки.
История

f1def beginning(word):f1def beginning(word):
2    w_len = len(word)2    w_len = len(word)
3    3    
n4    if  w_len % 3 == 0 or w_len % 3 == 1:n4    if w_len % 3 == 0 or w_len % 3 == 1:
5        return word[:w_len // 3]5        return word[:w_len // 3]
6    return word[:w_len // 3 + 1]6    return word[:w_len // 3 + 1]
n7    n7 
8 
8def middle(word):9def middle(word):
9    w_len = len(word)10    w_len = len(word)
10    new_len = w_len // 311    new_len = w_len // 3
nn12 
11    if w_len % 3 == 0:13    if w_len % 3 == 0:
12        return word[new_len:new_len * 2]14        return word[new_len:new_len * 2]
13    elif w_len % 3 == 1:15    elif w_len % 3 == 1:
14        return word[new_len:new_len * 2 + 1]16        return word[new_len:new_len * 2 + 1]
15    return word[new_len + 1:new_len * 2 + 1]17    return word[new_len + 1:new_len * 2 + 1]
n16    n18 
19 
17def end(word):20def end(word):
18    w_len = len(word)21    w_len = len(word)
19    new_len = w_len // 322    new_len = w_len // 3
nn23 
20    if w_len % 3 == 0 :24    if w_len % 3 == 0 :
n21        return word[new_len * 2:w_len]n25        return word[new_len * 2:]
22    return word[new_len * 2 + 1:w_len]26    return word[new_len * 2 + 1:]
2327
2428
25def split_sentence(sentence):29def split_sentence(sentence):
26    words = sentence.split()30    words = sentence.split()
27    result = []31    result = []
tt32 
28    for word in words:33    for word in words:
29        result.append((beginning(word), middle(word), end(word)))34        result.append((beginning(word), middle(word), end(word)))
30    return result35    return result
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op

f1def beginning(word):f1def beginning(word):
n2        w_len = len(word)n2    w_len = len(word)
3        3    
4        if  w_len % 3 == 0 or w_len % 3 == 1:4    if  w_len % 3 == 0 or w_len % 3 == 1:
5                return word[0:w_len // 3]5        return word[:w_len // 3]
6        return word[0:w_len // 3 + 1]6    return word[:w_len // 3 + 1]
7        7    
8def middle(word):8def middle(word):
n9        w_len = len(word)n9    w_len = len(word)
10 10    new_len = w_len // 3
11        if w_len % 3 == 0:11    if w_len % 3 == 0:
12                return word[w_len // 3:w_len // 3 * 2]12        return word[new_len:new_len * 2]
13        elif w_len % 3 == 1:13    elif w_len % 3 == 1:
14                return word[w_len // 3:w_len // 3 * 2 + 1]14        return word[new_len:new_len * 2 + 1]
15        return word[w_len // 3 + 1:w_len // 3 * 2 + 1]15    return word[new_len + 1:new_len * 2 + 1]
16        16    
17def end(word):17def end(word):
n18        w_len = len(word)n18    w_len = len(word)
19 19    new_len = w_len // 3
20        if w_len % 3 == 0 :20    if w_len % 3 == 0 :
21                return word[w_len // 3 * 2:w_len]21        return word[new_len * 2:w_len]
22        return word[w_len // 3 * 2 + 1:w_len]22    return word[new_len * 2 + 1:w_len]
2323
2424
25def split_sentence(sentence):25def split_sentence(sentence):
t26        words = sentence.split()t26    words = sentence.split()
27        my_list = []27    result = []
28        for word in words:28    for word in words:
29                my_list.append((beginning(word),middle(word),end(word)))29        result.append((beginning(word), middle(word), end(word)))
30        return my_list30    return result
31 
32print(split_sentence('Kазвам се Джон Сноу'))
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op