鱼C论坛

 找回密码
 立即注册
查看: 2243|回复: 3

[已解决]如何定义函数输入任意多个参数,返回相应数量的值

[复制链接]
发表于 2020-11-7 14:23:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
因为需要批量转换格式,因此想到定义一个函数可以快速全部转换
初步的想法是
[code]def DF(*x):   #有时候,预先不知道函数需要接受多少个实参,好在Python允许函数从调用语句中调用语句中收集任意数量的实参。在参数前加上*号。
    for i in x:
        i = pd.DataFrame(i)
    return i
但是这个时候,返回的只有最后一个i值的结果,所以想问问各位大佬,怎么把里面多个转换的结果都输出呢?
当然可以不用for循环,只是我想到的是for循环
最佳答案
2020-11-7 14:37:20
def DF(*x):  
    lst = []
    for i in x:
        i = pd.DataFrame(i)
        lst.append(i)
    return lst
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-7 14:37:20 | 显示全部楼层    本楼为最佳答案   
def DF(*x):  
    lst = []
    for i in x:
        i = pd.DataFrame(i)
        lst.append(i)
    return lst
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-7 14:41:49 | 显示全部楼层
def func(* p):
    d = []
    for x in p : d . append(x * 5)
    return d
for x in func(1, 2 , 3 , 4 , 5 , 6 , 7) : print(x)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-11-7 14:44:37 | 显示全部楼层

太感谢啦 ,并且这个还可以直接赋值给多个值。一开始我也想到这个,可是不知道哪个位置弄错,一直没成功
还担心下面的实现不了  
t_f_2_max,t_f_3_min,s_f_2_max,s_f_3_min=DF(t_f_2_max,t_f_3_min,s_f_2_max,s_f_3_min)
现在实现了 谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-17 23:11

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表