#python #list #variables #extract #one-liner
Вопрос:
Это связано с обработкой аргументов, подобных командной строке.
Учитывая список строк, я хочу извлечь эти строки в переменные с добавленной функцией, согласно которой последний список переменных получает все оставшиеся элементы списка в виде фрагмента списка, остатки тех, которые не были извлечены, например:
command, target, operation, parameters =
some_function(["grant", "woody", "rights", "read", "write", "delete"])
после some_function
выполнения переменные должны иметь следующие значения:
command = "grant"
target = "woody"
operation = "rights"
parameters = ["read", "write", "delete"]
Я напишу свою собственную функцию, если понадобится, но мне было интересно, есть ли у python жесткий способ сделать это.
Комментарии:
1. Загляните в распаковку
2. использовать
command, target, operation, *parameters = ["grant", "woody", "rights", "read", "write", "delete"]
3. Вот об этом я и говорю! Спасибо.
Ответ №1:
Используйте расширенную повторяющуюся распаковку:
command, target, operation, *parameters = ["grant", "woody", "rights", "read", "write", "delete"]
print(command)
print(target)
print(operation)
print(parameters)
Выход
grant
woody
rights
['read', 'write', 'delete']