`
DragonXin
  • 浏览: 6888 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
最近访客 更多访客>>
社区版块
存档分类
最新评论

Functools-partial

    博客分类:
  • Maya
阅读更多
functools.partial(func[, *args][, **keywords])
只为函数提供部分参数,同样可以返回一个可操作的对象


import maya.cmds as cmds
from functools import partial

def myfunc(inst=None, thing=None, arg=None):
    print 'arg: ', arg
    print 'inst: ', inst
    print 'thing: ', thing
    data = cmds.button(inst.btnA, query=True, label=True)
    print data
   
class ui():
    def __init__(self, winName="winTheWindow"):
        self.winTitle = "The Window"
        self.winName = winName
       
    def create(self):
        if cmds.window(self.winName, exists=True):
            cmds.deleteUI(self.winName)
           
        cmds.window(self.winName, title=self.winTitle)
        self.mainCol = cmds.columnLayout(adjustableColumn=True)        
        self.btnA = cmds.button(label='Press Me - External Func', c=partial(myfunc, self, 'say...'))
        self.btnB = cmds.button(label='Press Me - External Func', c=partial(self.a, 'something...'))
        self.btnC = cmds.button(label='Press Me - External Func No args', c=self.b)
        cmds.showWindow(self.winName)
        cmds.window(self.winName, edit=True, widthHeight=[250, 75])
       
    def a(self, myarg=None, arg=None):
        print 'myarg:', myarg
       
    def b(self, arg=None):
        print 'button require an argument'
        print 'the argument passed in will always be the last argument'
       
#create the window
inst = ui()
inst.create()
分享到:
评论

相关推荐

    浅谈python标准库--functools.partial

    主要介绍了python标准库--functools.partial,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    浅谈python标准库–functools.partial

     functools.partial返回的是一个可调用的partial对象,使用方法是partial(func,*args,**kw),func是必须要传入的,而且至少需要一个args或是kw参数。 创建一个功能函数,实现三个数的相加,如果其中的一个或是多个...

    matlab有些代码不运行-functools-for-matlab:经过测试的可工作的MATLAB功能编程工具。对真的

    partial -部分应用功能 rpartial右手局部 收款业务 map -应用一个函数来的载体/单元阵列的每个成员和返回相同类型的修饰的集 reduce -降低(倍)的值的单元阵列或载体导入使用重复的功能的应用程序的单个 实用工具 ...

    Python使用functools模块中的partial函数生成偏函数

    所谓偏函数即是规定了固定参数的函数,在函数式编程中我们经常可以用到,这里我们就来看一下Python使用functools模块中的partial函数生成偏函数的方法

    Python实现partial改变方法默认参数

    在Python的标准库中,functools库中有很多对方法有操作的封装功能,partial Objects就是其中之一,他可以实现对方法参数默认值的修改。本文就以实例代码说明这一功能。 下面就看下简单的应用测试实例。具体代码如下...

    Python functools模块学习总结

    functools.partial 作用: functools.partial 通过包装手法,允许我们 “重新定义” 函数签名 用一些默认参数包装一个可调用对象,返回结果是可调用对象,并且可以像原始对象一样对待 冻结部分函数位置函数或关键字...

    Python中使用partial改变方法默认参数实例

    Python 标准库中 functools库中有很多对方法很有有操作的封装,partial Objects就是其中之一,他是对方法参数默认值的修改。 下面就看下简单的应用测试。 复制代码 代码如下: #!/usr/bin/env python # -*- coding: ...

    Python中functools模块的常用函数解析

    1.partial 首先是partial函数,它可以重新绑定函数的可选...>>> from functools import partial >>> int2 = partial(int, 2) # 这里我没写base,结果就出错了 >>> int2('10') Traceback (most recent call last): Fi

    Python3 实现减少可调用对象的参数个数

    如果需要减少某个函数的参数个数,可以使用functools.partial() 。 partial() 函数允许给一个或多个参数设置固定的值,减少接下来被调用时的参数个数。 假设一个函数有很多参数: def func(a, b, c, d): print(a, ...

    python中偏函数partial用法实例分析

    本文实例讲述了python中偏函数partial...In [9]: from functools import partial In [10]: def add(a,b): ....: return a+b ....: In [11]: add(4,3) Out[11]: 7 In [12]: plus = partial(add,100) In [13]: plus(9) Ou

    Python中functools模块函数解析

    Python自带的 functools 模块提供了一些常用的高阶函数,也就是用于处理其它函数的特殊函数。换言之,就是能使用该... functools.partial(func[, args][, *keywords]) functools.update_wrapper(wrapper, wrapped[,

    Python Tkinter实现简易计算器功能

    闲暇时间用tkinter写了个简易计算器,可实现简单的加减乘除运算,用了Button和Entry2个控件,下面是代码,只是简单的用了偏函数partial,因为...from functools import partial from PIL import Image, ImageTk def

    GPUParallel:类似于Joblib的接口,用于并行GPU计算(例如,数据预处理)

    from functools import partial def perform ( idx , worker_id = None , gpu_id = None ): """ Function to be performed on worker. Variables `worker_id` and `gpu_id` will be filled automatically wit

    python-spm:简单安全的子流程管理器

    partial ( spm . run , 'git' ) >> > git ( 'status' , '-z' ). stdout . read (). split ( b' \x00 ' ) [ ' M spm.py' , '' ] 这在python标准库的subprocess模块之上提供了一个非常薄的KISS层。 该库支持Python 2...

    numpy 张量拉平与恢复

    numpy 中的高维数组可以使用其自带的 ...from functools import partial def flatten(x): original_shape = x.shape return x.flatten(), partial(np.reshape, newshape=original_shape) 上面这个 flatten 函数

    Python基于DES算法加密解密实例

    from functools import partial import base64 class DES(object): """ DES加密算法 interface: input_key(s, base=10), encode(s), decode(s) """ __ip = [ 58,50,42,34,26,18,10,2,60,52,44,36,28,20,12,4, ...

    tkyamlgui

    from functools import partial import tkyamlgui as tkyg if sys . version_info [ 0 ] < 3 : import Tkinter as Tk else : import tkinter as Tk class MyApp ( tkyg . App , object ): def __init__ ( self...

Global site tag (gtag.js) - Google Analytics