python进阶技巧

1.闭包

python进阶技巧_第1张图片
python进阶技巧_第2张图片
python进阶技巧_第3张图片
通过函数嵌套,可以让内部函数依赖外部变量,可以避免全局变量的污染问题

闭包注意事项:
python进阶技巧_第4张图片

总结:
python进阶技巧_第5张图片

2.装饰器

python进阶技巧_第6张图片

2.1装饰器的一般写法

python进阶技巧_第7张图片

2.2 装饰器的语法糖写法

python进阶技巧_第8张图片

def outer(func):
    def inner():
        print('睡了')
        func()
        print('起床')
    return inner

@outer
def sleep():
    import random
    import time
    print('睡眠中。。。')
    time.sleep(random.randint(1,5))

sleep()

3.设计模式

python进阶技巧_第9张图片

3.1 单例模式

python进阶技巧_第10张图片
python进阶技巧_第11张图片
优点:

  • 节省内存
  • 节省创建对象的开销

3.2 工厂模式

python进阶技巧_第12张图片
python进阶技巧_第13张图片

4.多线程

4.1 进程、线程

python进阶技巧_第14张图片
python进阶技巧_第15张图片

4.2 并行执行

python进阶技巧_第16张图片

4.3 多线程编程

python进阶技巧_第17张图片

import time
import threading


def sing(msg):
    while(True):
        print(f"{msg}")
        time.sleep(1)
def dance(msg):
    while(True):
        print(f"{msg}")
        time.sleep(1)

if __name__=='__main__':
    # sing()
    # dance()
    # 元组形式传参
    sing_thread = threading.Thread(target=sing,args=("我要是你爹哈哈",))
    # 字典形式传参
    dance_thread = threading.Thread(target=dance,kwargs={"msg":"我是你爷拉拉"})

    # 让线程开始工作
    sing_thread.start()
    dance_thread.start()

5.网络编程

5.1 Socket

python进阶技巧_第18张图片

5.2 客户端和服务端

python进阶技巧_第19张图片

5.3 Socket服务端编程

python进阶技巧_第20张图片
python进阶技巧_第21张图片

5.4 客户端开发

python进阶技巧_第22张图片
python进阶技巧_第23张图片

6.正则表达式

python进阶技巧_第24张图片

6.1 正则的三个基础方法

python进阶技巧_第25张图片
python进阶技巧_第26张图片
python进阶技巧_第27张图片
总结:
python进阶技巧_第28张图片

6.2 元字符匹配

python进阶技巧_第29张图片
python进阶技巧_第30张图片
python进阶技巧_第31张图片

7.递归

python进阶技巧_第32张图片
python进阶技巧_第33张图片

你可能感兴趣的:(python,python,开发语言)