#python
Вопрос:
Предположим,что я создал в df1, df2,df3 фрейм данных, созданный в текущей рабочей области.
Если я хочу удалить фрейм данных по отдельности.
del df1
del df2
del df3
если я хочу выполнить сквозной цикл и динамически удалить фрейм данных. Я использовал приведенный ниже код, но он не удалял удаление фрейма данных как просто строку, в которой объекты перечислены в текущих сеансах.
import pandas as pd
sheets=[]
for var in dir():
if isinstance(locals()[var], pd.core.frame.DataFrame) and var[0]!='_':
sheets.append(var)
del var #this is not deleting the dataframe but deleting just a name
есть какие-нибудь мысли по этому поводу?
Ответ №1:
а как насчет простого цикла?
for dataframe in [df1, df2, df3]:
del dataframe
Или, если вы действительно хотите получить имя переменной locals()
и удалить его оттуда, то:
for var in dir():
if isinstance(locals()[var], pd.core.frame.DataFrame) and var[0]!='_':
sheets.append(var)
del locals()[var]