Вылазит ошибка "invalid syntax" при использовании "for"

Osaji

Новичок
Пользователь
Дек 29, 2020
7
0
1
1. Операционная система: Windows
2. Версия Python 2.7.5
Вот код который есть:
Python:
print "Enter text:"
text = raw_input
for raw_input:
    if " " in raw_input > 3:
        print "Error"
    else:
        print "Cool!"
Ошибка вылазит тут:
for raw_input:
Сам я только начал кодить и не могу найти ответ на эту проблему..
Вообще у меня стоит задача сделать программу которая будет проверять количество слов в введенной строке. Если слов ровно 3 штуки, то программа выдает длину каждого слова по отдельности. Если кто-то поможет с целой программой буду безгранично благодарен)
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Вообще у меня стоит задача сделать программу которая будет проверять количество слов в введенной строке. Если слов ровно 3 штуки, то программа выдает длину каждого слова по отдельности.
Вот пример:
Python:
# -*- coding: utf-8 -*-
# чтобы print() работал как в python 3
from __future__ import print_function
import sys


print("Enter text:")
# чтобы можно было вводить кириллицу
text = raw_input().decode(sys.stdin.encoding)
# делим строку на слова
text2 = text.split()

# если 3 слова - выводим их длины
if len(text2) == 3:
    for word in text2:
        print(len(word))
# если не 3 - выводим Error
else:
    print("Error")
 
  • Мне нравится
Реакции: Osaji

Wolkan

Пользователь
Пользователь
Дек 4, 2020
26
5
3
Думаю тебе нужно что то такое:

Python:
print "Enter text:"
text = raw_input()
a = 0
for i in text:
    if i == ' ':
        a += 1
if a > 3
    print "Error"
else:
     print "Cool!"

И учи лучше python 3+. Второй уже доживает свое.
 

eff1c

Новичок
Пользователь
Дек 27, 2020
5
0
3
Потому что нет итератора
Почитайте внимательнее про циклы
P's. 4-я строка у вас тоже не сработает, так как оператор in только проверяет на наличие одного елемента в другом, а не считает их количество
 
Последнее редактирование:

Osaji

Новичок
Пользователь
Дек 29, 2020
7
0
1
Вот пример:
Python:
# -*- coding: utf-8 -*-
# чтобы print() работал как в python 3
from __future__ import print_function
import sys


print("Enter text:")
# чтобы можно было вводить кириллицу
text = raw_input().decode(sys.stdin.encoding)
# делим строку на слова
text2 = text.split()

# если 3 слова - выводим их длины
if len(text2) == 3:
    for word in text2:
        print(len(word))
# если не 3 - выводим Error
else:
    print("Error")
Спасибо вам огромное!!!!!!
 

Форум IT Специалистов