See this contrived example. I usually don't like messing with locals()and globals(), but I don't see a cleaner way:
class A:
def __init__(self):
self.var1 = 1
self.var2 = 2
obj = A()
locals().update(obj.__dict__)
print(var1)
print(var2)
>> 1
2
, df.columns __dict__. :
import pandas as pd
df = pd.DataFrame({'a':[1]})
for col in df.columns:
locals().update({col: df[col]})
print(a)
>> 0 1
Name: a, dtype: int64
, , , :
import pandas as pd
a = 7
print(a)
>> 7
df = pd.DataFrame({'a':[1]})
for col in df.columns:
locals().update({col: df[col]})
print(a)
>> 0 1
Name: a, dtype: int64