Как сопоставить словарь с файлом .py

#python #loops #dictionary

Вопрос:

У меня есть файл .py, в котором нет ничего, кроме словарей python. Я импортирую файл .py в свой рабочий скрипт. Я хочу просмотреть каждый словарь и сопоставить значения с фреймом данных. Когда я пытаюсь, или даже как получить список словарей из файла. Не мог бы кто-нибудь показать мне, как перебирать объекты в файле .py после импорта этого файла в другой скрипт. Ниже приведены некоторые словари для использования.

Предположим, что приведенный ниже словарь сохранен в mc.py

 ds_ad_affinity = {0:1.0000,1:0.9800}

ds_ak_alliance = {0:1.0000, 1:0.9500}

ds_fp_paid_in_full = {'eligiable -does not have discount':1.0000,
                      'ineligable': 1.0000,
                      'eligiable-has discount': 0.9500}
 

Затем я пытаюсь:

 import mc

for i in factor_list:
    col_name = i "factors"
    bi[col_name]=bi[i].map(dir(mc.i))
    print(bi[col_name].head())
 

И я тоже стараюсь:

 for i in factor_list:
        col_name = i "factors"
        bi[col_name]=bi[i].map(mc.i)
        print(bi[col_name].head())
 

Но я получаю следующую ошибку:

Ошибка атрибута: модуль » mc » не имеет атрибута «i». В этом случае имена словарей совпадают с именами столбцов, которые я использую в качестве ключей для сопоставления значений словаря. Таким образом, есть имена столбцов, ds_ad_affinity и результатом должен быть столбец ds_ad_affinity_factors со значениями из ds_ad_affinity словаря.

Комментарии:

1. from mc import ds_ad_affinity, ds_ak_alliance, ds_fp_paid_in_full

2. mc.i запрашивает буквальный атрибут . i Вы, наверное, хотите getattr(mc, i)