Нужна одна строка для извлечения членов списка python в переменные (применимо ко многим языкам)

#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']