forked from tdwojak/Python2017
task04 (labs05) done
This commit is contained in:
parent
5cac77a2e5
commit
98aac33f0b
@ -7,6 +7,7 @@ Zwraca liczbę słów, znaków i linii.
|
||||
"""
|
||||
|
||||
import sys
|
||||
import argparse
|
||||
|
||||
|
||||
def count_lines(text):
|
||||
@ -32,7 +33,32 @@ def wc(text):
|
||||
|
||||
def main():
|
||||
""" main """
|
||||
print(wc(sys.stdin.read()))
|
||||
#print(wc(sys.stdin.read()))
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--l", help="liczba linii", action = 'store_true')
|
||||
parser.add_argument("--w", help="liczba slow", action = 'store_true')
|
||||
parser.add_argument("--c", help="liczba znakow", action = 'store_true')
|
||||
parser.add_argument("file", help="sciezka do pliku", type = argparse.FileType('r'), nargs = '?')
|
||||
args = parser.parse_args()
|
||||
|
||||
|
||||
if args.file is None:
|
||||
fh_lines = sys.stdin.read()
|
||||
else:
|
||||
fh_lines = args.file.read()
|
||||
|
||||
if args.l:
|
||||
output = count_lines(fh_lines)
|
||||
elif args.w:
|
||||
output = count_words(fh_lines)
|
||||
elif args.c:
|
||||
output = count_chars(fh_lines)
|
||||
elif not (args.l and args.w and args.c):
|
||||
output = wc(fh_lines)
|
||||
|
||||
print(output)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
Loading…
Reference in New Issue
Block a user