随笔分类 - python
摘要:在网上大多关于join()与task_done()的结束原话是这样的: 但是可能很多人还是不太理解,这里以我自己的理解来阐述这两者的关联。 理解 如果线程里每从队列里取一次,但没有执行task_done(),则join无法判断队列到底有没有结束,在最后执行个join()是等不到结果的,会一直挂起。可
阅读全文
摘要:def lazy_print(*args): def pr(): print(args) return pr 当我们调用lazy_print()时,返回的并不是求和结果,而是求和函数: >>> p = lazy_print(1,2,3,4,5) >>> p <function lazy_print.
阅读全文
摘要:装饰器(Decorators)是 Python 的一个重要部分。简单地说:他们是修改其他函数的功能的函数。他们有助于让我们的代码更简短,也更Pythonic(Python范儿)。大多数初学者不知道在哪儿使用它们,所以我将要分享下,哪些区域里装饰器可以让你的代码更简洁。 首先,让我们讨论下如何写你自己
阅读全文
摘要:1、字符串前加 u 例:u"我是含有中文字符组成的字符串。" 作用: 后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时出现乱码。 2、字符串前加 r 例:r"\n\n\n\n” # 表示一个普通生字符串 \n\n\n\n,而不表示换行了。
阅读全文
摘要:python编程中可以使用pymysql进行数据库连接及增删改查操作,但每次连接mysql请求时,都是独立的去请求访问,比较浪费资源,而且访问数量达到一定数量时,对mysql的性能会产生较大的影响。因此实际使用中,通常会使用数据库的连接池技术,来访问数据库达到资源复用。 python的数据库连接池包
阅读全文
摘要:queue 介绍 queue 是 python 中的标准库,俗称队列,可以直接 import 引用,在 python2.x 中,模块名为 Queue。Python2.x 是 import Queue 注意Q是大写。 Python3.x 变成了queue。在 python 中,多个线程之间的数据是共享
阅读全文
摘要:1.pymysql 多线程访问数据库 输出如下 可以看到只有第一个线程成功执行 其中InternalError, OperationError的详细信息分别为 InternelError的问题在于多线程共享了一个connection,具体原因和解决方法可以查看 在使用conn时加锁 输出 解决问题
阅读全文
摘要:1.17 深入理解「描述符」 学习 Python 这么久了,说起 Python 的优雅之处,能让我脱口而出的, Descriptor(描述符)特性可以排得上号。 描述符 是Python 语言独有的特性,它不仅在应用层使用,在语言的基础设施中也有涉及。 我可以大胆地猜测,你对于描述符的了解是始于诸如
阅读全文
摘要:最近在学Python里异步IO中的协程,协程最初是由生成器变形的yield而来,感觉学完理解有些困难,故此再来回顾一下之前学习的生成器。在Python学习之初比较容易混淆可迭代对象、迭代器和生成器。因此,做以总结以辨析其中关键的区别。以下仅为习后个人理解,如有偏差,还请指出! Talk is che
阅读全文
摘要:我想大家都知道python的gil限制,记得刚玩python那会,知道了有pypy和Cpython这样的解释器,当时听说是很猛,也就意味肯定是突破了gil的限制,最后经过多方面测试才知道,还是那德行…. 如果你的应用英语那种cpu密集运算的,p大部分情况都推荐使用多进程。 有些扯远了,我个人很喜欢用
阅读全文
摘要:python中至少有三种比较常见的方法类型,即实例方法,类方法、静态方法。它们是如何定义的呢?如何调用的呢?它们又有何区别和作用呢?且看下文。 首先,这三种方法都定义在类中。下面我先简单说一下怎么定义和调用的。(PS:实例对象的权限最大。) 实例方法 定义:第一个参数必须是实例对象,该参数名一般约定
阅读全文
摘要:运行结果: testb = ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '
阅读全文
摘要:分布式进程: 在Thread和Process中,应当优选Process,因为Process更稳定,而且,Process可以分布到多台机器上,而Thread最多只能分布到同一台机器的多个CPU上。 Python的multiprocessing模块不但支持多进程,其中managers子模块还支持把多进程
阅读全文
摘要:1 简介 APScheduler的全称是Advanced Python Scheduler。它是一个轻量级的 Python 定时任务调度框架。同时,它还支持异步执行、后台执行调度任务。本人小小的建议是一般项目用APScheduler,因为不用像Celery那样再单独启动worker、beat进程,而
阅读全文
摘要:python数据库连接工具DBUtils DBUtils是一个允许在多线程python应用和数据库之间安全及高效连接的python模块套件。 python数据库连接工具DBUtils DBUtils是一个允许在多线程python应用和数据库之间安全及高效连接的python模块套件。 python数据
阅读全文
摘要:起因 今天在写东西的时候,用到了多线程。遇到了个问题: 子线程的异常,在父线程中无法捕获。 解决 问题代码 问题代码示例代码如下: 运行结果如下: 解决办法 通过查看资料:http://stackoverflow.com/questions/2829329/catch-a-threads-excep
阅读全文
浙公网安备 33010602011771号