История изменений
Исправление
Ttt,
(текущая версия)
:
Ну что бы сделал конкретно я:
1) Парсить файл придётся в любом случае, значит это должно делаться в самом начале скрипта. Либо просто будут идти соответствующие строки, либо будет вызываться заранее определённая функция, которая будет возвращать объект с распарсенными данными. Судя по задаче, рекомендую сохранять данные в следующую структуру:
{company:([],[],[])}
Ключом словаря будет название компании, а в массивах, соответственно, список IPv4-адресов, список IPv6-адресов и список почтовых серверов данной компании.
После того, как распарсили, парсим аргументы командной строки.
У тебя будет что-то типа:
if len(sys.argv) < 3:
...//код, выполняемый в случае отсутствия аргумента s
elif sys.argv[1] == '-s':
if sys.argv[2] == 'ab':
...//по алфавиту
elif ...:
....
elif ...:
....
в этом коде ещё нет проверки правильности аргументов командной строки.
//P.S.: для сортировки рекомендую ознакомиться с этим: https://wiki.python.org/moin/HowTo/Sorting
Исходная версия
Ttt,
:
Ну что бы сделал конкретно я:
1) Парсить файл придётся в любом случае, значит это должно делаться в самом начале скрипта. Либо просто будут идти соответствующие строки, либо будет вызываться заранее определённая функция, которая будет возвращать объект с распарсенными данными. Судя по задаче, рекомендую сохранять данные в следующую структуру:
{company:([],[],[])}
Ключом словаря будет название компании, а в массивах, соответственно, список IPv4-адресов, список IPv6-адресов и список почтовых серверов данной компании.
После того, как распарсили, парсим аргументы командной строки.
У тебя будет что-то типа:
if len(sys.argv) < 3:
...//код, выполняемый в случае отсутствия аргумента s
elif sys.argv[1] == '-s':
if sys.argv[2] == 'ab':
...//по алфавиту
elif ...:
....
elif ...:
....
в этом коде ещё нет проверки правильности аргументов командной строки.