Python学习笔记-4

Python学习笔记-4

并发编程

概述

  • 非并发

    • 程序由单个步骤序列构成
    • 包含独立子任务的程序执行性能低
  • 并发

    • 异步、高效
    • 分解子任务、简化流程与逻辑
  • 进程 process

    • 一个程序的执行实例
    • 每个进程有自己的地址空间、内存、数据栈及辅助数据
  • 线程 thread

    • 同一进程内,可被并行激活的控制流

    • 共享相同上下文(空间地址、数据结构)

    • 特点

      • 便于信息共享和通信
      • 线程访问顺序差异会导致结果不一致(条件 race condition)
  • Python GIL 全局解释器锁

    • Global Interpreter Lock
    • Python 代码由虚拟机(解释器主循环)控制
    • 主循环同时只能有一个控制线程执行
      在这里插入图片描述在这里插入图片描述

多线程

  • _thread

    • 特点

      • 没有控制进程结束机制
      • 只有一个同步原语(锁)
      • 功能少于 threading模块
    • .start_new_thread(function,arg,**kwargs=None) 开始线程
      在这里插入图片描述

  • threading 模块

    • .Thread 线程类

      • 构造

        • .Thread(target = 目标函数,args = (参数,))
        • 自定义Thread派生类,重写run方法逻辑
      • .start() 启动线程

      • .join() 要求主线程等待

      • .name 线程名称
        在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

    • .current_thread() 获取当前线程

    • threading.Lock 同步原语:锁

      • .acquire() 获得
      • .release() 释放
      • 支持上下文操作 with lock:
        在这里插入图片描述在这里插入图片描述

队列

  • queue模块

    • Queue FIFO

      • .Queue(maxsize =0) 构造实例
      • .put(item,block=True,timeout = None) 放入数据项
      • .get(block =True,timeout=None) 获取数据项
      • .task_done() 声明当前队列任务处理完毕
      • .join() 队列所有项处理完毕前阻塞
    • LifoQueue LIFO

    • PriorityQueue 优先队列
      在这里插入图片描述在这里插入图片描述在这里插入图片描述

multiprocessing 模块

  • 充分运用多核、多CPU的计算能力,适用于计算密集型任务

concurrent.futures 模块

  • ThreadPoolExecutor
  • ProcessPoolExecutor
    在这里插入图片描述在这里插入图片描述在这里插入图片描述

装饰器

概述

  • 用于管理和增强函数和类行为的代码

  • 提供一种在函数或类定义中插入自动运行代码的机制

  • 特点

    • 更明确的语法
    • 更高的代码可维护性
    • 更好的一致性

编写

  • 函数基础

    • 将函数赋给变量
    • 将函数作为参数传递
    • 函数嵌套及跨域访问
      在这里插入图片描述在这里插入图片描述
  • 函数定义装饰器

  • 类定义装饰器
    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述推荐定义装饰函数,因为装饰类容易出错

  • 装饰器参数
    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

IDE配置

虚拟环境

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

SQLite

动态类型

  • NULL
  • INTEGER
  • REAL
  • TEXT
  • BLOB

文件导出

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述 读取csv 、Excel
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

连接数据库

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

SQLite 操作

sqlite3

  • 连接对象:sqlite3.connect(‘数据文件.db’)

    • commit()
    • close()
      在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
  • 游标:cursor = conn.cursor()

    • execute('SQL语句‘,[参数])
    • fetchall():获取所有结果到列表
    • fetchone()
    • fetchmany(记录数)
      在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
  • 参数化查询:避免SQL注入

    • ?:参数传递tuple
    • :参数名,参数传递字典表
      在这里插入图片描述在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python学习笔记》是由皮大庆编写的一本关于Python语言学习的教材。在这本书中,作者详细介绍了Python语言的基础知识、语法规则以及常用的编程技巧。 首先,作者简要介绍了Python语言的特点和优势。他提到,Python是一种易于学习和使用的编程语言,受到了广大程序员的喜爱。Python具有简洁、清晰的语法结构,使得代码可读性极高,同时也提供了丰富的库和模块,能够快速实现各种功能。 接着,作者详细讲解了Python的基本语法。他从变量、数据类型、运算符等基础知识开始,逐步介绍了条件语句、循环控制、函数、模块等高级概念。同时,作者通过大量的示例代码和实践案例,帮助读者加深对Python编程的理解和应用。 在书中,作者还特别强调了编写规范和良好的编程习惯。他从命名规范、注释风格、代码缩进等方面指导读者如何写出清晰、可读性强的Python代码。作者认为,良好的编程习惯对于提高代码质量和提高工作效率非常重要。 此外,作者还介绍了Python的常用库和模块。他提到了一些常用的库,如Numpy、Pandas、Matplotlib等。这些库在数据处理、科学计算、可视化等领域有广泛的应用,帮助读者更好地解决实际问题。 总的来说,《Python学习笔记》是一本非常实用和全面的Python学习教材。通过学习这本书,读者可以系统地学习和掌握Python编程的基础知识和高级应用技巧,为以后的编程学习和工作打下坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值