Найти - Пользователи
Полная версия: Python: программа для подсчёта колличества слов в строке.
Начало » Python для экспертов » Python: программа для подсчёта колличества слов в строке.
1 2 3
slymit
Имеется такая задача: пользователю предлагается ввести несколько строк. После их ввода программа считает колличество слов в первой строке и выводит это число на экран, затем во второй строке, в третей и т.д. Пустой строке соответствует 0.
Помогите пожалуйста решить эту задачу.
tabajara
from pprint import pprint
input_words = lambda x, y = []: x and \
              (y.append(raw_input()) or True) and \
              input_words(x - 1, y) or y
get_len = lambda x: len(filter(lambda y: y.strip(), x.split(' ')))
[pprint(get_len(s)) for s in input_words(3)]
slymit
Огромное спасибо за решение программы. А как переделать её так, чтобы строки она брала из текстового файла(т.е. открывала обычный текстовой файл и брала строки из него), а затем число слов в строке записывала в другой файл.
tabajara
[__import__("pprint").pprint(len(filter(lambda y: y.strip(), s.split(" ")))) for s in __import__("sys").stdin]
[code][code]
in Windows:
    q.py < my_strings.txt > result.txt[/code]
slymit
Я сам новичок в питоне, поэтому наверно делаю что-то не так. Программа не хочет запускаться. Вот полностью задача, которую мне надо решить: даны два файла (в первом файле написан текст, второй файл пустой). Программа открывает первый файл, считает колличество слов в первой строке и записывает это колличество во второй файл. Затем то же самое делает со второй строй, с третей, четвёртой и так до конца текста(т.е. до той строки на которой текст в первом файле заканчивается). Помогите пожалуйста её решить. Напишите полный код программы, если не трудно.
tabajara
це і є повний код програми. запускати тра з консолі - зайти в папку з тим скриптом командою cd. i там написати: імя_програми.py < імя_файлу_з_стрічками.txt > імя_файлу_куда_потрібно_вивести_результат.txt
slymit
а можно сделать так чтоб файл открывался программой, т.е. функцией open.
tabajara
можна :)
slymit
=) А как?
tabajara
out = file("result.txt", "w")
out.write("\n".join(map(str,[len(filter(lambda y: y.strip(), s.split(" "))) for s in open("my_strings.txt")])))
out.close()
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB