#! usr/bin/python from sys import argv from scanfile import scanner class UnknownCommand(Exception): pass def processLine(line): # определить функцию, if line[0] == '*': # применяемую к каждой строке print("Ms.", line[1:-1]) elif line[0] == '+': print("Mr.", line[1:-1]) # отбросить первый и последний вызовы else: raise UnknownCommand(line) # исключение filename = 'data.txt' if len(argv) == 2: filename = argv[1] # аргумент командной строки с именем scanner( filename, processLine ) # файла запускает сканерlename, processLine) # файла запускает сканер
#!/usr/local/bin/python from sys import argv from scanfile import scanner class UnknowCommand(Exception):pass commands={'*':'Ms.','+':'Mr.'} def proccessLine(line): try: print("%s%s"%(commands[line[0]],line[1:])) except KeyError: raise UnknowCommand(line) filename='data.txt' if len(argv)==2: filename=argv[1] scanner(filename,proccessLine)
#!/usr/local/bin/python from sys import argv from scanfile import scanner class Unknowncammand(Exception): pass def processLine(line): if line[0] == '*': print("Ms.", line[1:-1]) elif line[0] == '+': print("Mr.", line[1:-1]) else: raise UnknownCommand(line) filename = 'data.txt' if len(argv) == 2: filename = argv[1] scanner(filename, processline)
#!/usr/bin/py3 from sys import argv from scanfile import scanner class UnknownCommand(Exception): pass def processLine(line): if line[0] == '*': print("Ms.", line[1:-1]) elif line[0] == '+': print("Mr.", line[1:-1]) else: raise UnknownCommand(line) filename = 'data.txt' if len(argv) == 2: filename = argv[1] scanner(filename, processLine)
#!/usr/local/bin/python from sys import argv from scanfile import scanner def processLine(line): # define a function if line[0] == '*': # applied to each line print "Ms.", line[1:-1] elif line[0] == '+': print "Mr.", line[1:-1] # strip 1st and last char else: raise 'unknown command', line # raise an exception filename = 'data.txt' if len(argv) == 2: filename = argv[1] # allow file name cmd arg scanner(filename, processLine) # start the scanner
import sys from scanfile import scanner class UnknownCommand(Exception): pass commands = {"*": "Ms.", "+": "Mr."} def processLine(line): try: print "%s%s" % (commands[line[0]], line.rstrip()) except KeyError: raise UnknownCommand(line) fileName = "data.txt" if len(sys.argv) != 2 else sys.argv[1] scanner(fileName, processLine)
from sys import argv from scanfile import scanner class UnknownCommand(Exception): pass def process_line(line): if line[0] == "*": print("Ms.", line[1:-1]) elif line[0] == "+": print("Mr.", line[1:-1]) else: raise UnknownCommand(line) filename = 'data.txt' if len(argv) == 2: filename = argv[1] scanner(filename, process_line())