Задать вопрос
  • Как преобразовать список в словари?

    drygdryg
    @drygdryg
    Python-разработчик
    Например, с помощью генератора словаря (dict comprehension) и range:
    a, b, c, d = 'abcd'
    lst = [1, a, b, c, d, 2, a, b, c, d, 3, a, b, c, d]
    result = {lst[i]: {lst[i+1]: lst[i+2], lst[i+3]: lst[i+4]} for i in range(0, len(lst), 5)}
    print(result)  # {1: {'a': 'b', 'c': 'd'}, 2: {'a': 'b', 'c': 'd'}, 3: {'a': 'b', 'c': 'd'}}

    или с помощью цикла:
    result = {}
    for i in range(0, len(lst), 5):
        result[lst[i]] = {lst[i+1]: lst[i+2], lst[i+3]: lst[i+4]}
    print(result)  # {1: {'a': 'b', 'c': 'd'}, 2: {'a': 'b', 'c': 'd'}, 3: {'a': 'b', 'c': 'd'}}
    Ответ написан
    Комментировать
  • Как преобразовать список в словари?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Тут не поощряется публикация заданий без попытки самостоятельного решения.
    В ответе тоже не буду давать вам готового решения, поскольку это "медвежья услуга".

    Могу дать подсказку как решать вашу задачу.
    Во-первых, следует отметить, что во втором, заблокированном вашем вопросе, формат входных данных отличается от озвученного здесь. Нужно тщательнее и аккуратнее приводить примеры.
    Любую относительно сложную задачу нужно разбивать на блее простые подзадачи и решать их отдельно и изолированнно.

    В данном случае входной список вам следует сначала разделить на набор отдельных списков, где в каждом первым элементом будет ваш идентификатор, а дальше список ключей и значений. Это можно оформить отдельной функцией. В том, втором вопросе было видно, что разделить входную последовательность можно, например, по значению 'ID'. В примерах, приведённых здесь, нет такихэлементов, поэтому тут придётся ориентироваться на тип или четность...
    Когда у вас будет последовательность списков, первый элемент - ключ всего списка, легко отделить слайсом, а весь хвост можно легко превратить в пары ключ-значение вот таким вот способом:
    In [1]: lst=[1,2,3,4,5,6]
    
    In [2]: dict(zip(itr:=iter(lst), itr))
    Out[2]: {1: 2, 3: 4, 5: 6}


    Ну а если вы не сообразите, как увязать воедино все приведенные мной тут примеры, то вам еще рано решать такие задачи, нужно сделать пару шагов назад и осваивать базовые основы языка.
    Ответ написан
    Комментировать
  • Как запустить .bat файл через pywinauto?

    Vindicar
    @Vindicar
    RTFM!
    С командной строкой взаимодействуй через стандартный модуль subprocess. pywinauto ТОЛЬКО для графических приложений.
    Ответ написан
    Комментировать
  • Как запустить .bat файл через pywinauto?

    @res2001
    Developer, ex-admin
    Скорее всего напрямую батник вы запустить не сможете - это не исполняемый файл. Винда не умеет так как никсы.
    Вам нужно запускать батник как параметр cmd.exe.
    Например:
    cmd.exe /c G:\Documents\Python\auto_old_dump\dump\start.bat
    Ответ написан
    Комментировать