美文网首页扣丁学堂Python培训
扣丁学堂简述Python开发的技巧有哪些

扣丁学堂简述Python开发的技巧有哪些

作者: 994d14631d16 | 来源:发表于2018-08-10 11:45 被阅读2次

    关于Python开发的技巧小编在上篇文章已经给大家分享过一些,本篇文章扣丁学堂Python培训小编再和大家分享一下Python开发的技巧有哪些,下面随小编一起来了解一下Python开发的技巧有哪些吧。

    Python培训

    property装饰器:

    定义私有类属性

    将property与装饰器结合实现属性私有化(更简单安全的实现get和set方法)。

    #python内建函数

    property(fget=None, fset=None, fdel=None, doc=None)

    fget是获取属性的值的函数,fset是设置属性值的函数,fdel是删除属性的函数,doc是一个字符串(像注释一样)。从实现来看,这些参数都是可选的。

    property有三个方法getter(), setter()和delete() 来指定fget, fset和fdel。 这表示以下这行:

    class Student(object):

    @property #相当于property.getter(score) 或者property(score)

    def score(self):

    return self._score

    @score.setter #相当于score = property.setter(score)

    def score(self, value):

    if not isinstance(value, int):

    raise ValueError('score must be an integer!')

    if value < 0 or value > 100:

    raise ValueError('score must between 0 ~ 100!')

    self._score = value

    iter魔法

    通过yield和__iter__的结合,我们可以把一个对象变成可迭代的

    通过__str__的重写, 可以直接通过想要的形式打印对象

    #!/usr/bin/env python

    # -*- coding: utf-8 -*-

    class TestIter(object):

    def __init__(self):

    self.lst = [1, 2, 3, 4, 5]

    def read(self):

    for ele in xrange(len(self.lst)):

    yield ele

    def __iter__(self):

    return self.read()

    def __str__(self):

    return ','.join(map(str, self.lst))

    __repr__ = __str__

    def test_iter():

    obj = TestIter()

    for num in obj:

    print num

    print obj

    if __name__ == '__main__':

    test_iter()

    神奇partial:

    partial使用上很像C++中仿函数(函数对象)。

    在stackoverflow给出了类似与partial的运行方式:

    def partial(func, *part_args):

    def wrapper(*extra_args):

    args = list(part_args)

    args.extend(extra_args)

    return func(*args)

    return wrapper

    利用用闭包的特性绑定预先绑定一些函数参数,返回一个可调用的变量,直到真正的调用执行:

    #!/usr/bin/env python

    # -*- coding: utf-8 -*-

    from functools import partial

    def sum(a, b):

    return a + b

    def test_partial():

    fun = partial(sum, 2) # 事先绑定一个参数, fun成为一个只需要一个参数的可调用变量

    print fun(3) # 实现执行的即是sum(2, 3)

    if __name__ == '__main__':

    test_partial()

    # 执行结果

    5

    以上就是扣丁学堂Python在线学习小编给大家分享的Python开发的技巧有哪些,希望对小伙伴们有所帮助,想要了解更多内容的小伙伴可以登录扣丁学堂官网咨询。想要学好Python开发小编给大家推荐口碑良好的扣丁学堂,扣丁学堂有专业老师制定的Python学习路线图辅助学员学习,此外还有与时俱进的Python课程体系和大量的Python视频教程供学员观看学习,想要学好Python开发技术的小伙伴快快行动吧。

    相关文章

      网友评论

        本文标题:扣丁学堂简述Python开发的技巧有哪些

        本文链接:https://www.haomeiwen.com/subject/ccekbftx.html