随笔分类 -  Python

摘要:pymysql的executemany()方法支持传入单个SQL和一个sequence of records(sequence or mapping)来同时写入多条数据。 例如: sql = "insert into t(c1, c2) values(%s, %s)" args = [(1, 2), 阅读全文
posted @ 2024-09-11 17:35 realcp1018 阅读(67) 评论(0) 推荐(0) 编辑
摘要:之前从来没想到我会在安装Python这点上卡住,事实上最近就是在一个CentOS测试机上安装Python时遇到了问题,因此记一下。 以往我们使用yum安装python时非常简单: yum install python or yum install python3 最多额外再加装个pip以及pytho 阅读全文
posted @ 2024-08-20 14:46 realcp1018 阅读(712) 评论(0) 推荐(0) 编辑
摘要:近期在准备日常办公环境时遇到了一些问题,咋一看这些问题都很基础,最后的具体解决方式也很琐碎,但预感到其会是某一类问题(应该是版本兼容类问题)的通用灵感来源因此将其归类整理起来。 问题1:centos 6安装python3.12版本遇到ssl不生效的问题 在使用python时我一般比较喜欢较新的版本, 阅读全文
posted @ 2024-05-24 14:35 realcp1018 阅读(33) 评论(0) 推荐(0) 编辑
摘要:# Python抽象类 python没有接口类型,因为python是动态类型的语言,像接口这种轻耦合的东西在python中随处都是,例如内置的魔法方法等,甚至可以说在python这种天马行空的语言中接口显的反而有点清秀。 不过Python还是提供了像java中那样的抽象类定义方法,某些时候还是有用的 阅读全文
posted @ 2023-05-31 11:16 realcp1018 阅读(411) 评论(0) 推荐(0) 编辑
摘要:What is the difference between Builder Design pattern and Factory Design pattern? - Stack Overflow A factory is simply a wrapper function around a con 阅读全文
posted @ 2022-02-10 12:35 realcp1018 阅读(456) 评论(0) 推荐(0) 编辑
摘要:最近在Github上写了一个TiDB的项目叫tidb-toolkit,用来存储平时维护TiDB时会用到的一些工具。 目前主要提供2个功能:1是对超出TiDB事务大小限制的SQL进行自动拆分执行,2是基于GC对TiDB表进行闪回。 目前工具都只支持未设置auto_random的表,也有支持通过时间列进 阅读全文
posted @ 2021-12-18 22:59 realcp1018 阅读(107) 评论(0) 推荐(0) 编辑
摘要:Python支持多线程,但是由于GIL的限制并不能无限制的开启子线程。 通过semaphore我们可以控制子线程对于共享资源的访问,即可以阻塞一些子线程直到有空余的semaphore资源,但是并不能实际限制子线程数。 当我们需要开启成千上万个子线程时,很多时候并不希望这些子线程同时执行(可能受限于系 阅读全文
posted @ 2021-07-15 14:52 realcp1018 阅读(755) 评论(0) 推荐(2) 编辑
摘要:Ansible通过jinja2模块对后缀为.j2的文件进行jinja模板渲染,某一次在引用一个类似python dict的配置文件变量时报出了如上错误。 这里直接参考一个ansible github issue中的示例进行解释: "AnsibleUndefinedVariable: 'unicode 阅读全文
posted @ 2021-02-23 16:16 realcp1018 阅读(2376) 评论(0) 推荐(0) 编辑
摘要:https://docs.python.org/3/library/os.html https://docs.python.org/3/library/subprocess.html subprocess是对os.system的一个改进型模块,建议实际中使用subprocess模块内的命令来执行系统 阅读全文
posted @ 2020-04-15 12:32 realcp1018 阅读(1071) 评论(0) 推荐(0) 编辑
摘要:FTP server默认的端口号为21,20端口用于数据传输。 本文参考地址:https://docs.python.org/3.6/library/ftplib.html 1. ftplib里包含FTP和FTP_TLS两个class,后者是封装了TLS安全传输协议的FTP,本文不多描述,查看官网即 阅读全文
posted @ 2020-04-15 11:57 realcp1018 阅读(2602) 评论(0) 推荐(0) 编辑
摘要:在《Python装饰器(Decorators )》一文中介绍了python装饰器的概念,日常写代码时有一个装饰器很常见,他就是内置的@property。 我们一步步的来接近这个概念。 一个初始示例如下: LeosWorkGround项目下有一个名为leo01.py的文件内容如下: # coding= 阅读全文
posted @ 2019-10-23 15:39 realcp1018 阅读(757) 评论(0) 推荐(0) 编辑
摘要:http://book.pythontips.com/en/latest/decorators.html 在《Built-in Functions(3.6)》和《Python上下文管理器》两篇笔记中,已经有了装饰器初步的示例,本篇结合一个高露洁大学牛人的博客来系统的解释下python中装饰器的作用。 阅读全文
posted @ 2019-10-23 15:33 realcp1018 阅读(915) 评论(0) 推荐(0) 编辑
摘要:http://book.pythontips.com/en/latest/args_and_kwargs.html https://stackoverflow.com/questions/3394835/use-of-args-and-kwargs 很多python新手会对于github和pytho 阅读全文
posted @ 2019-10-23 10:29 realcp1018 阅读(1269) 评论(0) 推荐(0) 编辑
摘要:工作中最常见的配置文件有四种:普通key=value的配置文件、Json格式的配置文件、HTML格式的配置文件以及YAML配置文件。 这其中以第一种居多,后三种在成熟的开源产品中较为常见,本文只针对第一种配置文件。 一般来说Linux shell下提供了diff命令来比较普通文本类的配置文件,Pyt 阅读全文
posted @ 2019-06-06 13:57 realcp1018 阅读(934) 评论(0) 推荐(0) 编辑
摘要:有这样一个列表: s=list('abcdefg') 现在因为某种原因我们需要从s中踢出一些不需要的元素,方便起见这里直接以踢出所有元素的循环代替: for e in s: s.remove(e) 结果却是: In [3]: s Out[3]: ['b', 'd', 'f'] 多次示例后发现,这种r 阅读全文
posted @ 2019-06-05 17:54 realcp1018 阅读(1281) 评论(0) 推荐(0) 编辑
摘要:昨天在参照着网上写一段关于MySQL连接池的配合gevent多线程调用的代码时遇到了一个问题,自己写的代码根本不能多线程执行,比单会话插入数据慢太多,直到今天早上才发现问题所在,把DB API从MySQLdb换为pymysql之后得到解决,因此测试了一下不同DB API和OS下executemany 阅读全文
posted @ 2019-01-10 16:02 realcp1018 阅读(857) 评论(0) 推荐(0) 编辑
摘要:今天在写一个StringIO.write(int)示例时思维那么一发散就拐到了字符集的问题上,顺手搜索一发,除了极少数以外,绝大多数中文博客都解释的惨不忍睹,再鉴于被此问题在oracle的字符集体系中蹂躏过,因此在过往笔记的基础上增删了几个示例贴出来。 Python2: 首先清楚两个Python 2 阅读全文
posted @ 2019-01-04 17:06 realcp1018 阅读(1533) 评论(0) 推荐(1) 编辑
摘要:最近在看两个github项目的代码时对迭代器有些困惑,因此写一篇笔记以理清脉络,经过两天的修改完善对迭代器有了一个初步的理解,相信会比网上绝大多数笔记有用些。 也可以参考stackoverflow上的这个上万赞的回答: What does the “yield” keyword do? 但就我个人来 阅读全文
posted @ 2018-12-28 11:01 realcp1018 阅读(14928) 评论(0) 推荐(2) 编辑
摘要:参考: https://pythonspot.com/recursion/ https://www.python-course.eu/recursive_functions.php 一、递归两大要素:起、止条件和递归方程 1、递归方程,即递归调用的方法 递归通俗的说就是在函数内部自己调用自己,如何调 阅读全文
posted @ 2018-11-22 16:09 realcp1018 阅读(3182) 评论(0) 推荐(0) 编辑
摘要:示例: 有如下表需要进行行转列: 代码如下: # -*- coding:utf-8 -*- import pandas as pd import MySQLdb from warnings import filterwarnings # 由于create table if not exists总会抛 阅读全文
posted @ 2018-10-12 15:20 realcp1018 阅读(19080) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示