python - 如何在python中将一个函数的变量运行到另一个函数?

标签 python function oop google-colaboratory user-defined-functions

我是初学者。我有两个功能:
第一个创建数据框和一些打印语句
第二是将数据帧下载到 colab 中的 csv。
我想通过 df_name 下载所有数据帧。
代码:

def fun1():
  import pandas as pd
  d = {'col1': [1, 2], 'col2': [3, 4]}
  d2 = {'col1': [-5, -6], 'col2': [-7, -8]}
  df = pd.DataFrame(data=d)
  df2 = pd.DataFrame(data=d2)
  print('info', df.info())
  print('info', df2.info())
  return df, df2
def fun2(df):
  from google.colab import files
  name1 = 'positive.csv'
  name2 = 'negative.csv'
  df.to_csv(name1)
  df2.to_csv(name2)
  files.download(name1)
  files.download(name2)
fun2(df) #looking something like this that download my df, func2 should read my df and df2 from fun1() 
我试过:
class tom:
  def fun1(self):
    import pandas as pd
    d = {'col1': [1, 2], 'col2': [3, 4]}
    d2 = {'col1': [-5, -6], 'col2': [-7, -8]}
    df = pd.DataFrame(data=d)
    df2 = pd.DataFrame(data=d2)
    print('info', df.info())
    print('info', df2.info())
    self.df= df
    self.df2 = df2
    
    return df, df2
 
  def fun2(self):
    df,df2 = fun1()
    from google.colab import files
    name1 = 'positive.csv'
    name2 = 'negative.csv'
    df.to_csv(name1)
    df2.to_csv(name2)
    return files.download(name1) ,files.download(name2)
tom().fun2() #it download files but shows print of fun1 as well which I don't want. 

寻找类似的东西
tom().fun2(dataframe_name) #it just download the files nothing else

最佳答案

如果它不会改变,直接在类中设置永久变量
只为行动定义乐趣。

class s:
  import pandas as pd
  
  d = {'col1': [1, 2], 'col2': [3, 4]}
  d2 = {'col1': [-5, -6], 'col2': [-7, -8]}
  df = pd.DataFrame(data=d)
  df2 = pd.DataFrame(data=d2)


  name1 = 'positive.csv'
  name2 = 'negative.csv'
  df.to_csv(name1)
  df2.to_csv(name2)
  def f():
    print('info', df.info())
    print('info', df2.info())
  
  def fun(x):
    from google.colab import files
    return files.download(x)
s.f() --it will print value only
s.fun(s.name1) --it will just download the file

关于python - 如何在python中将一个函数的变量运行到另一个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69330023/

相关文章:

function - 如何更有效地编写此Powershell函数?

JavaScript - 为什么使用初始参数调用函数更快?

java - Java中行为接口(interface)类型的引用变量

c++ - 在扑克 C++ 中绘制同一张牌的问题

javascript - 为什么 json.parse 会中断?以及如何修复它

python - 导入 scikit-learn 模块时出错

python - 了解 python 内存装饰器中的参数处理

python - 如何使用 Aptana Studio 在 mac os x 和 windows 上安装 Python?

arrays - Ada 函数可以返回数组吗?

c++ - 在C++中的类中实现回调函数