随笔分类 -  Python

摘要:之前工作需要将客户名字按笔画排序,因此写了一个笔画排序的工具,话不多说,上代码 """汉字笔画顺序相关 >>> pprint(p) [{'age': 19, 'name': '陈世美', 'score': 29}, {'age': 18, 'name': '张大千', 'score': 27}, { 阅读全文
posted @ 2021-04-18 21:00 乘月归 阅读(1151) 评论(0) 推荐(0)
摘要:问题 你要处理由大量不同类型的对象组成的复杂数据结构,每一个对象都需要进行不同的处理。 比如,遍历一个树形结构,然后根据每个节点的相应状态执行不同的操作。 解决方案 这里遇到的问题在编程领域中是很普遍的,有时候会构建一个由大量不同对象组成的数据结构。 假设你要写一个表示数学表达式的程序,那么你可能需 阅读全文
posted @ 2021-01-02 20:31 乘月归 阅读(255) 评论(0) 推荐(0)
摘要:Python 中的 operator 模块和 functools 模块主要用于函数式编程 operator 模块 1)算术运算符函数 函数式编程中,经常需要把算术运算符当作函数使用,例如求阶乘 使用 lambda 的例子 from functools import reduce def fact(n 阅读全文
posted @ 2021-01-02 17:15 乘月归 阅读(150) 评论(0) 推荐(0)
摘要:[TOC] redis的zset可以很方便地用来实现排行榜功能,下面简单介绍python如何使用redis实现排行榜功能 加入排行榜 获取redis实例 全量加入排行榜 注意根据redis包的版本不同,zadd和zincby的传参方式也不同 对于redis 3.0(python的redis包)以下的 阅读全文
posted @ 2019-11-03 16:57 乘月归 阅读(3767) 评论(0) 推荐(1)
摘要:最近由于需要写一个脚本调用另一个文件里面的一个方法,试了很久都导包失败,特此记录一下 问题背景 1)脚本文件为 ,要调用 里面的一个类方法 2) 里面导入了项目的其他包,其导包方式为 ,其中src为项目代码的根目录 3)项目处于运行状态,脚本是后续自己写的 解决过程 1)尝试在 里面使用 导包,结果 阅读全文
posted @ 2019-08-31 14:28 乘月归 阅读(369) 评论(0) 推荐(0)
摘要:python从数据库导出数据到excel 最近需要从数据库里导出一些数据到excel,刚开始我是使用下面的命令 select * from xxx where xxx into outfile 'xxx.xls' 结果报错 ERROR 1290 (HY000): The MySQL server i 阅读全文
posted @ 2019-08-17 16:23 乘月归 阅读(7108) 评论(0) 推荐(0)
摘要:列表排序 示例:lst = [12, 6, 1, 3, 10] 方法一:使用sort 补充: 可以指定排序规则和是否降序 注意sort只适用于列表,其内部采用的排序算法是Timsort,一种结合归并排序和插入排序的算法 方法二:使用sorted 补充: 也可以指定排序规则和是否降序 注意sorted 阅读全文
posted @ 2019-06-02 21:13 乘月归 阅读(815) 评论(0) 推荐(0)
摘要:把一定格式的字符串转化成字典 示例 方法一:使用split 方法二:使用split和列表解析式 阅读全文
posted @ 2019-06-02 20:27 乘月归 阅读(4676) 评论(0) 推荐(0)
摘要:字符串反转 示例:s = "hello" 方法一:使用切片 方法二:使用reversed 方法三:使用reverse 方法四:使用reduce 列表反转 示例:lst = [1, 2, 3, 4, 5] 方法一:使用切片 方法二:使用reversed 方法三:使用reverse 方法四:使用whil 阅读全文
posted @ 2019-06-02 20:07 乘月归 阅读(506) 评论(0) 推荐(0)
摘要:PyPy初体验 PyPy安装 1.下载 下载地址:(温馨提示:需要梯子) 下载PyPy3.6 64bit Ubuntu版本 2. 解压 下载下来的文件pypy3.6 v7.1.1 linux64.tar.bz2移动到家目录或/opt目录下,然后解压 3. 建立软连接 PyPy与Cpython速度对比 阅读全文
posted @ 2019-05-17 22:19 乘月归 阅读(574) 评论(2) 推荐(0)
摘要:现在有一个员工字典,类似这样的结构 假设我们要给员工添加爱好信息,但是我们不知道hobby这个键存不存在,我们通常的做法是分为三步: 1)从字典中取到hobbies对应的值,如果没有hobbies这个键,则设置这个值为空列表 2)对这个值进行更新操作 3)将更新后的值赋值回字典 以上方法进行了两次查 阅读全文
posted @ 2019-05-04 18:10 乘月归 阅读(2225) 评论(0) 推荐(2)
摘要:list.sort()和sorted()都是python的内置函数,他们都用来对序列进行排序,区别在于 list.sort()是对列表就地(in place)排序,返回None;sorted()返回排好序的新列表,原列表不变 list.sort()只适用于列表,sorted()适用于任意可迭代对象 阅读全文
posted @ 2019-05-02 20:49 乘月归 阅读(1679) 评论(0) 推荐(1)
摘要:Python2和Python3中列表推导式的不同 python2 可以看到x的值被覆盖了 来看python3 python3 x的值没有被覆盖,这是因为python3为列表推导式创建了局部作用域,这个局部作用域内定义的变量不会对全局作用域的变量造成干扰 补充: for 循环与列表推导式的情况不同,无 阅读全文
posted @ 2019-05-02 11:56 乘月归 阅读(431) 评论(0) 推荐(0)
摘要:sys.argv的意义 简单来说,sys.argv是一个参数列表,这个列表存放着从外界获取到的参数(可能有多个) 下面以一个例子来详细阐述sys.argv,本次演示在ubuntu环境下运行 新建一个test.py,写入以下代码 test.py 在命令行使用python解释器运行test.py 运行结 阅读全文
posted @ 2019-05-01 22:50 乘月归 阅读(9822) 评论(0) 推荐(0)
摘要:__str__和__repr__ __str__和__repr__都是python的内置方法,都用与将对象的属性转化成人类容易识别的信息,他们有什么区别呢 来看一段代码 在控制台进行如下输入 把__str__换成__repr__ 在控制台重复上述操作 同时定义__str__和__repr__ 在控制 阅读全文
posted @ 2019-04-28 23:04 乘月归 阅读(294) 评论(0) 推荐(0)
摘要:不使用内置模块 先判断是否是闰年 再计算天数 使用python内置时间模块 使用timetuple 使用strftime 阅读全文
posted @ 2019-04-26 15:42 乘月归 阅读(511) 评论(0) 推荐(0)
摘要:赋值 在python中,赋值仅仅是复制了对象的引用,并没有开辟内存空间 上述代码只是把a的引用复制给了b,结果是a和b同时指向1 对于可变对象 结果a和b都变成了 [1, 2, 3, 4] 浅拷贝(shadow copy) 浅拷贝会创建新对象,其内容不是原对象本身的引用,而是原对象内第一层对象的引用 阅读全文
posted @ 2019-04-06 19:42 乘月归 阅读(184) 评论(0) 推荐(0)
摘要:用python实现遍历文件夹,此函数接收一个目录,打印出目录里所有的文件(包括子目录的文件) 阅读全文
posted @ 2019-04-06 17:02 乘月归 阅读(357) 评论(0) 推荐(0)
摘要:问题 现在考虑有一个jsonline 格式的文件file.txt 大小约为10K,之前处理文件的代码如下所示 现在要处理一个大小为10G 的文件,但是内存只有4G,如果在只修改get_lines 函数而其他代码保持不变的情况下,应该如何实现?需要考虑的问题都有哪些? 需要考虑的问题: 文件大小超过内 阅读全文
posted @ 2019-04-03 20:36 乘月归 阅读(2287) 评论(0) 推荐(0)
摘要:题目:以下两段代码各输出什么,为什么 输出结果 解答 以上两段代码的本质区别是第一个是直接传对象,第二个是传对象的引用。 第一段代码给列表添加{'num': i},是直接添加字典对象,for循环中每次添加的对象都是不同的; 第二段代码给列表添加的是字典对象的引用(变量a指向这个字典),循环过程中,虽 阅读全文
posted @ 2019-04-02 22:44 乘月归 阅读(203) 评论(0) 推荐(0)