Как рисовать элементы из нескольких списков для создания несопровождаемого?

Учитывая несколько списков:

>>> foo = [hex, oct, abs, round, divmod, pow] >>> bar = [format, ord, chr, ascii, bin] and others 

Я заполняю его множеством вложенных условий

1.Установить переменную из системы

 >>> dir() ['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'bar', 'foo'] >>> [e for e in dir() if '__' not in e] ['bar', 'foo'] >>> mul_list = [e for e in dir() if '__' not in e] >>> mul_list ['bar', 'foo'] 

2.Поддерживать каждый элемент вложенным состоянием

 >>> [ e.__name__ for single_list in mul_list for e in eval(single_list)] ['format', 'ord', 'chr', 'ascii', 'bin', 'hex', 'oct', 'abs', 'round', 'divmod', 'pow'] 

Как извлечь с помощью простого кода элегантно?

3 Solutions collect form web for “Как рисовать элементы из нескольких списков для создания несопровождаемого?”

Я не уверен в более простом способе, но вы должны рассмотреть возможность доступа к globals в качестве альтернативы использованию eval :

 [ e.__name__ for list_name in mul_list for e in globals()[list_name]] 

Вы можете просто конкатенировать списки с помощью оператора +. Так,

 multlist = [] for e in dir(): if "__" not in e: if type(eval(e)) == type(multlist) multlist += eval(e) 

frist change

 mul_list = [e for e in dir() if '__' not in e] 

к

 mul_list = [e for e in dir() if '__' not in e and isinstance(eval(e),list)] 

поэтому всегда получайте единственный список в mul_list

@coldspeed проверить это

 >>> foo = [hex, oct, abs, round, divmod, pow] >>> fred = ['one', 'two', 'three'] >>> jim = [1, 2, 3] >>> mul_list = [e for e in dir() if '__' not in e] >>> [ e.__name__ for list_name in mul_list for e in globals()[list_name]] Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'str' object has no attribute '__name__' >>> mul_list ['foo', 'fred', 'jim'] 
  • Как определить ленивую переменную в Python, которая повысит NotImplementedError для абстрактного скелета кода?
  • Разница между dir (...) и vars (...) .keys () в Python?
  • Переменные, пространство имен и классы
  • Python удаляет дубликаты и сохраняет результат
  • Python / gspread - как я могу обновить несколько ячеек с РАЗЛИЧНЫМИ ЦЕННОСТЯМИ сразу?
  • Усечение таблицы BigQuery перед потоковой обработкой не работает
  • Невозможно вернуться к корневому пользователю с помощью python
  • Python if-statement, основанный на содержимом тега заголовка HTML
  • NeedIndexError в Google App Engine навсегда
  • Python 2to3 windows CMD
  • Расширение типов путем подкласса в Python
  •  
    Interesting Posts for Van-Lav

    Использование MySQL с Django – доступ запрещен для пользователя '@' localhost

    Python с использованием getattr для вызова функции с переменными параметрами

    Что означает «dict-like» в Python?

    Как изменить «тег» при входе в syslog из «Неизвестно»?

    Пример, чтобы понять функцию оптимизации прыжкового прыжка

    Как мне получить путь к скрипту Python, в котором я запущен?

    Использование кросс-платформенной платформы для python

    Как создать lazy_evaluated столбцы dataframe в Pandas

    Выполнение функции выполняется только для определенных условий в python

    Преобразуйте набор чисел в numpy, чтобы каждый номер преобразовывался в ряд других чисел, которые меньше, чем это

    Подсчет автомобилей OpenCV + Python Issue

    Как использовать индексирование масок на массивах numpy классов?

    Создание новых распределений в scipy

    Соединитель Python привязывается к любому IP-адресу?

    Питонический способ перебора битов целого числа

    Python - лучший язык программирования в мире.