Add tasks to labs 05

This commit is contained in:
Tomasz Dwojak 2017-12-16 06:52:54 +01:00
parent e784da982f
commit c89673937e
5 changed files with 50 additions and 0 deletions

11
labs05/task00.py Normal file
View File

@ -0,0 +1,11 @@
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
def suma(liczby):
pass
def main():
print(summa([1, 2, 3, 4]))
if __name__ == "__main__":
main()

0
labs05/task01.py Normal file
View File

0
labs05/task02.py Normal file
View File

0
labs05/task03.py Normal file
View File

39
labs05/task04.py Normal file
View File

@ -0,0 +1,39 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Implementacja narzedzia ``wc`` z linuksa (word counter).
Zwraca liczbę słów, znaków i linii.
"""
import sys
def count_lines(text):
""" return number of lines. """
return len(text.strip().split('\n'))
def count_words(text):
""" return number of words. """
return sum([len([1 for word in line.split(' ') if len(word)])
for line in text.split('\n')])
def count_chars(text):
""" return number of words. """
return len(text)
def wc(text):
""" proper wc """
lines = count_lines(text)
words = count_words(text)
chars = count_chars(text)
return lines, words, chars
def main():
""" main """
print(wc(sys.stdin.read()))
if __name__ == "__main__":
main()