Если, как выяснилось из коментариев "нужно, чтобы возвращалось
не само слово, а его длина", и "Как можно сделать это все
без сплита и min?"
то тогда вот так:
def find_short(text):
num_of_let=0
min_numb = len(text)
for elem in text:
if elem == ' ':
if num_of_let < min_numb:
min_numb=num_of_let
num_of_let=0
else:
num_of_let+=1
return min_numb
text = 'bitcoin take over the world maybe who knows'
find_short(text)
Результат:
Out[20]: 3
Как просили - не само слово, а его длина.
Если вы все таки передумаете и захотите иметь и самое короткое слово и его длину, но без функций, то сделать это можно вот так:
def find_short(text):
num_of_let=0
word=[]
min_numb = len(text)
for elem in text:
if elem == ' ':
if num_of_let < min_numb:
min_numb=num_of_let
min_word=''.join(word)
num_of_let=0
word=[]
else:
word=word+list(elem)
num_of_let+=1
return min_numb,min_word
Только извращение все это. Нет, в целях "познания мира" конечно можно и потренироваться, для развития алгоритмического мышления например.
Но на то и придуманы функции, что-бы учиться их использовать там, где это целесообразно.