Commit ab97bc65 authored by Neeme Kahusk's avatar Neeme Kahusk
Browse files

lausesta suvandiga toru

parent a69ee94f
Moodul "argparse" teeb lihtsaks kasutajasõbralike käsureaprogrammide tegemise. Programmis antakse ette vajalikud argumendid, "argparse" aitab neid leida "sys.argv" abil. Moodul "argparse" tekitab automaatselt abi- ja kasutusjuhisid ning väljastab veateated, kui kasutaja annab ette vale argumendi.
Moodul "argparse" teeb lihtsaks kasutajasõbralike käsureaprogrammide tegemise. Programmis antakse ette vajalikud argumendid, "argparse" aitab neid leida "sys.argv" abil. Moodul "argparse" tekitab automaatselt abi- ja kasutusjuhised ning väljastab veateated, kui kasutaja annab ette vale argumendi.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Seda malli saab kasutada "toru" elmendi eeskujuna.
Sisend loetakse failist (või standardsisendist),
väljund kirjutatakse väljundfaili (või standardväljundisse).
Programmi parameetrite muutmiseks on võimalik kasutada suvandeid.
Näidiseks on üks suvand, --lausesta (lühendina -l)
Mooduli argparse kirjeldus:
https://docs.python.org/2/library/argparse.html#module-argparse
"""
import sys, argparse
import sys
try:
import argparse
except Exception:
print "Liiga vana Pythoni versioon!"
def split_sentences(iStr):
"""
Jagab teksti lauseteks sellistelt kohtadelt, kus on 2 tühikut järjest.
"""
def process_file(iFile):
a = iFile.read()
a = iStr.replace(' ','\n')
return a
def process_file(kwargs):
"""
Kui on antud suvand, siis rakendab
vastavat funktsiooni.
"""
a = kwargs.infile.read()
if kwargs.lausesta:
b = split_sentences(a)
return b
else:
return a
def main():
parser = argparse.ArgumentParser(
description='Whatever the program will do')
description='See on toru näidis')
parser.add_argument("infile", nargs='?', type=argparse.FileType('r'),
default=sys.stdin,
help="input file (stdin, if omitted or '-')")
help="sisendfail (kui on '-' või ära jäetud, siis tavasisend)")
parser.add_argument('outfile', nargs='?', type=argparse.FileType('w'),
default=sys.stdout,
help="output file (stdout, if omitted or '-')")
help="väljundfail (kui on '-' või ära jäetud, siis tavaväljund)")
parser.add_argument('-l', '--lausesta', action="store_true",
help='lausesta fail')
args = parser.parse_args()
out = process_file(args.infile)
out = process_file(args)
f = args.outfile
f.write(out)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment