• 五个Python奇技淫巧你都知道吗?


    1、isinstance

    isinstance 函数可用于判断实例的类型,其实它的第二个参数可以是多个数据类型组成的元组。例如:

    isinstance(x, (int, float))
    
    # 等价于
    
    isinstance(x, int) or isinstance(x, float)

    类似的函数还有字符串的 startswith 方法和 endswith 方法,例如:

    s.startswith(('"""', "'''"))
    
    # 等价于
    
    s.startswith("'''") or s.startswith('"""')

    2、用 http.server 共享文件

    # python3
    python3 -m http.server
    
    # python2
    python -m SimpleHTTPServer

    效果如下图所示,通过浏览器方便局域网共享文件

    图片

    3、zip 函数实现字典键值对互换

    >>> lang = {"python":".py", "java":".java"}
    
    >>> dict(zip(lang.values(), lang.keys()))
    {'.java': 'java', '.py': 'python'}

    4、查找列表中出现次数最多的数字

    [1, 2, 3, 4, 2, 2, 3, 1, 4, 4, 4, 5]
    >>> max(set(test), key=test.count)
    4

    5、使用 __slots__ 节省内存

    class MyClass(object):
        def __init__(self, name, identifier):
            self.name = name
            self.identifier = identifier
            self.set_up()
    
    print(sys.getsizeof(MyClass))
    >>> 1016
    
    class MyClass(object):
        __slots__ = ['name', 'identifier']
    
        def __init__(self, name, identifier):
            self.name = name
            self.identifier = identifier
            self.set_up()
    
    print(sys.getsizeof(MyClass))
    >>> 888

    在这里还是要推荐下我自己建的Python学习群:609616831,群里都是学Python的,如果你想学或者正在学习Python ,欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份2020最新的Python进阶资料和零基础教学,欢迎进阶中和对Python感兴趣的小伙伴加入! 

  • 相关阅读:
    算法——排序方法总结(冒泡,快速,直接,希尔,堆,归并排序)
    C++函数调用之——值传递、指针传递、引用传递
    STM32(13)——SPI
    STM32(12)——CAN
    STM32(11)——DMA
    STM32(10)——窗口看门狗
    STM32(9)——通用定时器作为输入捕捉
    SRM32(8)——ADC和DAC
    WPF从入门到放弃系列第二章 XAML
    WPF从入门到放弃系列第一章 初识WPF
  • 原文地址:https://www.cnblogs.com/python-miao/p/14365353.html
Copyright © 2020-2023  润新知