勤奋的大熊猫 2021-11-20 14:07 采纳率: 100%
浏览 24
已结题

如何在当前文件中设定另一个文件中某个函数参数的默认值

我有两个文件,debug.py和debug01.py。
debug01.py中的代码

class Calculation:
    def __init__(self):
        pass

    def multiply(self, x=0, y=1):
        z = x * y
        return z

debug.py里面的代码

from debug01 import Calculation

cal = Calculation()

cal.multiply(y=5)

可以看到此时在debug.py中调用multiply(y=5),此时的x参数默认为0。
我想问有没有办法在debug.py中直接设定x参数的值,比如设定x=2,这样调用multiply(y=5)时让x的参数默认值变为2,而不是0.

  • 写回答

3条回答 默认 最新

  • CSDN专家-文盲老顾 2021-11-20 14:13
    关注
    
    
    class Calculation:
        def __init__(self):
            self.defaultX = 0
            self.defaultY = 1
            pass
     
        def multiply(self, x=None, y=None):
            if x==None:
                x = self.defaultX
            if y==None:
                y = self.defaultX
            z = x * y
            return z
        
    cal = Calculation()
    
    cal.defaultX=10
    
    z = cal.multiply(y=5)   
    
    print(z)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月28日
  • 已采纳回答 11月20日
  • 创建了问题 11月20日

悬赏问题

  • ¥15 poi合并多个word成一个新word,原word中横版没了.
  • ¥15 【火车头采集器】搜狐娱乐这种列表页网址,怎么采集?
  • ¥15 求MCSCANX 帮助
  • ¥15 机器学习训练相关模型
  • ¥15 Todesk 远程写代码 anaconda jupyter python3
  • ¥15 我的R语言提示去除连锁不平衡时clump_data报错,图片以下所示,卡了好几天了,苦恼不知道如何解决,有人帮我看看怎么解决吗?
  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?