Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 13, 2010 12:18:15

qman
От:
Зарегистрирован: 2007-07-02
Сообщения: 444
Репутация: +  0  -
Профиль   Отправить e-mail  

проверка аргумента без переменных с помошью OptionParser

Всем привет.
есть код

from optparse import OptionParser
# -*- coding: utf-8 -*-
parser = OptionParser()
#исходное размещение файлов для упаковки
parser.add_option("-i", "--directory-input", dest="directory_input",
help="directory to backup")
#место хранения файлов после упаковки
parser.add_option("-o", "--directory-dest", dest="directory_dest",
help="location backup")
#путь к архиватору 7zip
parser.add_option("-p", "--path-7zip", dest="path_7zip", help="path to 7zip",
default = r"C:\Program Files\7-Zip\7z.exe")
#путь к архиватору 7zip
parser.add_option("-s", "--subdirectory", action="store_true",
help="subdirectory to pack",
default = False
)
мне нужно добавить ключ formatname , данный ключ имеет тип boolean (значение да либо нет). Я пробовал (скорее всего не правильно понял документацию), что мою задачу можно решить с помошью
parser.add_option("-f", "--formatname-backup", action="formatname_true")
но при вызове такого кода
я получаю:
Traceback (most recent call last):
File "C:\djproject\src\run_archive_optparse.py", line 39, in <module>
parser.add_option("-f", "--formatname-backup", action="formatname_true")
File "C:\Python25\lib\optparse.py", line 1005, in add_option
option = self.option_class(*args, **kwargs)
File "C:\Python25\lib\optparse.py", line 563, in __init__
checker(self)
File "C:\Python25\lib\optparse.py", line 619, in _check_action
raise OptionError("invalid action: %r" % self.action, self)
optparse.OptionError: option -f/--formatname-backup: invalid action: 'formatname
_true'
Как правильно написать код чтобы вызывать скрипт с аргументами без переменных (например как команды дос dir /b)?
Всем спасибо



Офлайн

#2 Апрель 13, 2010 12:52:41

qman
От:
Зарегистрирован: 2007-07-02
Сообщения: 444
Репутация: +  0  -
Профиль   Отправить e-mail  

проверка аргумента без переменных с помошью OptionParser

qman
parser.add_option(“-f”, “–formatname-backup”, action=“formatname_true”)
должно быть
parser.add_option(“-f”, “–formatname-backup”, action=“store_false”, dest = “formatname_backup”)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version