Прежде всего, я хотел бы заявить, что это отладочный вопрос для упражнения, но я не могу получить никакой помощи от лектора, и, насколько я прочитал аргументы, я не могу показатьсячтобы понять это, вот и яИтак, у меня есть скрипт на python, который сравнивает файлы .txt, переданные в качестве аргументов.В настоящее время это называется следующим образом:
python compare.py -s stop_list.txt NEWS/news01.txt NEWS/news02.txt
и файлы разбираются в список имен с использованием
import sys, re, getopt, glob
opts, args = getopt.getopt(sys.argv[1:],'hs:bI:')
opts = dict(opts)
filenames = args
if '-I' in opts:
filenames = glob.glob(opts['-I'])
print('INPUT-FILES:', ' '.join(filenames))
print(filenames)
Я могу передать более двух файлов, просто перечислив их вместе
python compare.py -s stop_list.txt NEWS/news01.txt NEWS/news02.txt NEWS/news03.txt NEWS/news04.txt
, но это может быстро стать непрактичным.
Теперь предлагается передавать больше файлов с использованием шаблона
python compare.py -s stop_list.txt -I ’NEWS/news??.txt’
i.e.:
python compare.py -s stop_list.txt -I ’NEWS/news0[123].txt’
Однако, похоже, он ведет себя немногоудачливый.Прежде всего, если я напишу:
python compare.py -s stop_list.txt -I NEWS/news01.txt NEWS/news02.txt
, только news01.txt будет передан в скрипт.
Ниже, при использовании предложенного шаблона, нет никакого ввода вообще.Я не могу понять, является ли код для разбора входных файлов неправильным и нуждается в некотором изменении, или я делаю что-то не так.
-h заявляет:
USE: python <PROGNAME> (options) file1...fileN
OPTIONS:
-h : print this help message
-b : use BINARY weights (default: count weighting)
-s FILE : use stoplist file FILE
-I PATT : identify input files using pattern PATT,
(otherwise uses files listed on command line)
Заранее спасибо:)