Найти - Пользователи
Полная версия: Передача параметров через getopt
Начало » Python для экспертов » Передача параметров через getopt
1
felix
Хочу спросить можно ли сделать вот такое с помощью getopt
script -log DADA -act VOTE
Чтобы передавать аргументы за опциями, а не сразу опции а затем аргументы, после чего, не понятно какие аргументы будут относиться каким параметрам?
Или это реализуется через другой модуль?
Если можно приведите код…
Андрей Светлов
можно. Но лучше использовать optparse - тоже станандартный.
Примеры - в хелпе к нему неплохо описаны.
slav0nic
ну например


opts, args = getopt.getopt(sys.argv, ‘x:v’,)
for o, a in opts:
if o in ('-x','–ix'):
print a #значение -x
zna4enie_x = a
if o in ('-v', ):
VERBOSE = 1
print args #аргументы в конце после всех параметров


print opts, args сделай и поймёшь всё
alafin
felix, наверное самым оптимальным решением будет использовать optparse. Подробней о нем можешь почитать http://ru.pywiki.com/index.php/Optparse
dvs
from optparse import OptionParser

if __name__=='__main__':
parser = OptionParser()
parser.add_option("-log", dest="log_name",
help="log file name", metavar="FILE_NAME.ext")
...

if len(sys.argv)<2:
#parser.error("incorrect number of arguments")
parser.print_help()
sys.exit()

(cmdline_opts, args) = parser.parse_args()

log.debug(pformat( cmdline_opts ))
log.debug("arguments: " + pformat( args ))
...
pyxap
подскажите что лучше использовать, мне нужно передать 3 параметра, которые потом как-то присвоить 3м переменным, или же напрямую с ними работать, что лучше использовать? тыкните носом
Ferroman
А как насчёт прочитать таки что выше написано. Я понимаю что трудно, но раз вы умеете писать…
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB