• Decorators ,Lambda Functions and Sequences of Python


    #using Decorators   not understand really
    import operator
    class Files:
        def __init__(self,**kwargs):
            self.properties =kwargs
    
        def copy(self):
            print "copying"
        def move(self):
            print "moving "
        def remove(self):
            print "deleting"
        def get_properites(self):
            return self.properties
    
        def get_property(self,key):
            return self.properties.get(key)
    
        @property
        def privacy(self):
            return self.properties.get("privacy")
        @privacy.setter
        def privacy(self,c):
            self.properties['privacy'] =c
    
        @privacy.deleter
        def privacy(self):
            del self.properties['privacy']
    
    
    
        #Lambda functions
        def calcuate(self,x):
            return x*2
        def cal2(self,j):
            t = lambda x: x * 2
            return t(j)
    
        # Multiple Arguments Using lambda
        def MulArg(self,x,y):
            t= lambda x,y:(x*y,x+y)
            return t(x,y)
    
        #Operators and KeyWords for sequences
    
        def OKs(self):
            t = tuple(range(29)) # tuple can not changed
            l= list(range(23))    # list can change
            print t
            print l
    
        # itemgetter Not easy really
        def itemgetee(self):
            getseconditem = operator.itemgetter(1)
            ls =['a','b','c','d','e']
            tu=('a','gg','d','c','f')
            print (getseconditem(ls))
            print (getseconditem(tu))
            print (operator.itemgetter(1,3,5)('abcdefg'))
    
    
    def main():  # here not main(self)  ,will get error  TypeError: main() takes exactly 1 argument (0 given)
        imageDoc = Files(privacy="secret",you="your")
        print imageDoc.get_property("privacy")
        print imageDoc.get_property("you")
    
        D = Files()
        D.privacy="dddddddddd"
        print D.privacy # will get dddddddd
        print imageDoc.calcuate(3)  # works
        print D.calcuate(3)         # works
        print D.cal2(3)
        print D.MulArg(13,7)
        print D.MulArg(13, 7)[0]
        print D.MulArg(13, 7)[1]
        print D.OKs()
        D.itemgetee()
    
    main()

  • 相关阅读:
    asp.net运行网页时出现目录清单
    c#变量命名规范
    asp.net的优点
    为什么使用javascript脚本语言以及javascript的特点组成
    ASP.NET控件
    sql2000的常见操作
    最常用的sql语句
    sql提升
    c语言学习(二) 程序的灵魂
    c语言学习(三) 数据类型
  • 原文地址:https://www.cnblogs.com/TendToBigData/p/10501253.html
Copyright © 2020-2023  润新知