Найти слово по его номеру

В тексте найти слово под определенным номером (например, пятое слово по счету). Вывести на экран его первую букву.

В программе ниже переменная count используется, чтобы считать слова, а f - чтобы определять, находимся ли мы внутри очередного слова или началось новое слово.

Если началось новое слово, то счетчик слов увеличивается, и если счетчик равен искомому по номеру слову, то цикл завершается.

s = input()
l = len(s)
n = int(input("Номер слова: "))
count = 0
f = 0
i = 0
while i < l:
	if s[i] != ' ' and f == 0:
		count += 1
		f = 1
		if count == n: 
			break
	elif s[i] == ' ': 
		f = 0
	i += 1
 
print(s[i])

Пример выполнения кода:

один два три четы пять шесть    
Номер слова: 4
ч

Однако с помощью Python решение этой задачи может быть существенно короче:

s = input()
l = len(s)
n = int(input("Номер слова: "))
s = s.split()
 
print(s[n][0])

Метод split() без аргумента разбивает строку на слова по пробелу. Выражение s[n][0] извлекает из списка n-ый элемент, а затем берет из сроки первый символ.

Создано