elif args.dirname.endswith(('.m', '.xml')) , args - , , , , , - :
def main(argv):
args = argumentParser(argv)
if sorted(args) == ('.m', '.xml'):
overrideM()
xmlOverride()
, , :
def main(argv):
args = argumentParser(argv)
for ext in args:
generic_search(ext)
args.dirname.endswith(('.m', '.xml')) , , .m, .xml. , str.endswith , os.listdir, .
- - :
from argparse import ArgumentParser
import os
parser = ArgumentParser()
parser.add_argument("path")
parser.add_argument('ext', nargs='*')
args = parser.parse_args()
path = args.path
exts = args.ext
for f in os.listdir(path):
if f.endswith(tuple(exts)):
with open(os.path.join(path, f)) as fle:
print(fle.name)
, , - , endswith .
glob, , :
from argparse import ArgumentParser
import os
from glob import iglob
parser = ArgumentParser()
parser.add_argument("path")
parser.add_argument('ext', nargs='*')
args = parser.parse_args()
path = args.path
exts = args.ext
for f in chain.from_iterable([iglob(path+"/*"), iglob(path+"/**/*")]):
if f.endswith(tuple(exts)):
with open(os.path.join(path, f)) as fle:
print(fle.name)
, , . glob , , , , listdir filer endswith.
, dict :
from argparse import ArgumentParser
import os
from glob import iglob
def xml(f):
print(f)
def m(f):
print(f)
def text(f):
print(f)
mapped = {"m":m, "xml":xml, "text":text}
parser = ArgumentParser()
parser.add_argument("path")
parser.add_argument('ext', nargs='*')
args = parser.parse_args()
path = args.path
exts = args.ext
for f in chain.from_iterable([iglob(path + "/*"), iglob(path + "/**/*")]):
ext = f.rsplit(".", 1)
if len(ext) == 2 and ext[1] in mapped:
mapped[ext[1]](f)
- O (1), , , .
:
$ python 3_payg.py /home/padraic .xml
/home/padraic/sitemap.xml
/home/padraic/yacy/build.xml
/home/padraic/graphviz-master/graphviz.appdata.xml