![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
文章平均质量分 53
混沌鳄鱼
Talk is cheap, Show me the code.
Life is short, I play Python!
展开
-
在PyCharm中如何更好地实现Python代码的智能补全
文章中介绍了几种方法在PyCharm中更好地实现Python代码的智能补全原创 2017-08-02 10:47:39 · 5804 阅读 · 0 评论 -
Python os.walk 遍历指定深度的方法
用os.walk可以遍历多层目录,但是有时需要只遍历指定层数目录。比如,要获取某个目录的1级和2级子目录。可以用下面的方法。# -*- coding: UTF-8 -*-# Python 3.6import osdef get_sub_dirs(root_path): root_depth = len(root_path.split(os.path.sep)) c原创 2018-02-03 00:05:30 · 10591 阅读 · 1 评论 -
Python 求最小公倍数和最大公约数的递归写法
# 最小公倍数def lcm(a, b, c=1): if a * c % b != 0: return lcm(a, b, c+1) else: return a*ctest_cases = [(4, 8), (35, 42), (5, 7), (20, 10)]for case in tes原创 2017-12-22 17:31:12 · 3213 阅读 · 2 评论 -
Python 将一个正整数分解质因数
遇到一个Python编程联系题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。#!/usr/bin/env python# -*- coding: utf-8 -*-def div_func(n): result = [] while True: for i in xrange(2, int(n**0.5) + 1):原创 2017-01-03 00:23:02 · 8518 阅读 · 0 评论 -
Python如何导入非.py扩展名的第三方模块文件。
例如:我一个模块文件,扩展名是txt,放在硬盘上任意一个目录。要导入怎么办?我测试的结果是导入不用.py或.so扩展名字的模块文件会非常麻烦。唯一可行的方法是这下面这样。>>> print(open('d:/Temp/my_module.txt').read())def foo(): print('foo') >>> import importlib.u原创 2017-11-30 10:36:36 · 3209 阅读 · 1 评论 -
Python eval 函数的滥用
有这样一个问题大概意思就是定义一个函数,清理一个嵌套list中的字符串数据,按照对应可以解析的数据类型进行转换。正常情况下,大多数人的方法可能是用 try int,float, 加 if 判断,但是写起相当麻烦这里用eval函数实现起来却非常省事。def clean_data(data): for sub_list in data: for原创 2017-11-02 22:46:30 · 2173 阅读 · 0 评论 -
约瑟夫环问题用Python的解法
约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。一排人,编号从1开始到17.所有人按序围成一个圈,从编号1开始,挨个报数,从1开始,报到3则出局,然后再次从1开始报数,直到只剩下一个人,请问最后留原创 2017-11-01 22:31:54 · 2256 阅读 · 1 评论 -
《程序员面试题精选》05.输出一个字符串的所有子串
题目:给定一个字符串,输出其所有子字符串,例如给定字符串abc,则输出 :a,b,c,d,ab,bc,cd,abc,bcd,abcd。用递归的思路就是先找所有以a开头的子串,然后再找以b开头的子串,直到d。其实用python解决非常省事,见下面的代码。注意python有默认递归1k层的限制,换成递推的写法也可以。#!/usr/bin/env python# -*- coding: utf-8 ...原创 2017-10-31 10:27:38 · 1212 阅读 · 0 评论 -
写一个函数,检测输入的数字旋转180度后是否相等,比如619旋转后还是619.
用递归的方法很容易实现:#coding=utf-8def turnover(n): if len(n) == 0: return True elif len(n) == 1: return n in '018' elif (n[0]==n[-1] and n[0] in '018') \ or n[0]+n[原创 2017-10-12 23:34:40 · 1402 阅读 · 1 评论 -
python重复list中元素中的字母次数
例如实现以下的情况:words = ['hello', 'exercise', 'with', 'words']repeat_letter(words, [4, 2, 10, -2], 3)#得到 ['helloooo', 'exeeeercise', 'with', 'wordddds']def repeat_letter(words, positions原创 2017-10-19 15:45:11 · 784 阅读 · 0 评论 -
Python中sum函数的详细用法说明
#!/usr/bin/env python# -*- coding: utf-8 -*-# sum的最常见用法计算一个序列的累加和print(sum([1, 2, 3]))# 6# # sum 函数原型是 sum(iterable, start), 还可以给个初始值print(sum([1, 2, 3], 10))# 16# 另外一个比较Hack一些的用法, 展开2层的嵌套列原创 2017-09-28 09:39:16 · 14221 阅读 · 0 评论 -
如何把一个8位的时间类型字符串(“2017-08-04”)存进一个定长为3的byte数组中
如何把一个8位的时间类型字符串(“2017-08-04”)存进一个定长为3的byte数组中?大概的思路是这样的3个byte共24bit日 1-31,用 5 bit月 1-12 用 4 bit年 0000-9999 用剩下 15 bitimport textwrap date = '2017-08-04'date_element = map(int, date.spl原创 2017-08-04 18:46:57 · 557 阅读 · 0 评论 -
全面深入彻底理解Python切片操作【原创】
全面深入彻底理解Python切片操作【原创】我们基本上都知道Python的序列对象都是可以用索引号来引用的元素的,索引号可以是正数由0开始从左向右,也可以是负数由-1开始从右向左。在Python中对于具有序列结构的数据来说都可以使用切片操作,需注意的是序列对象某个索引位置返回的是一个元素,而切片操作返回是和被切片对象相同类型对象的副本。如下面的例子,虽然都是一个元素,但是对原创 2017-08-31 00:17:20 · 53765 阅读 · 5 评论 -
Python函数式编程解决单词中字符频统计问题
就是输入一个单词比如“science”,最后返还的结果是[ 'c','e'], 2/7。大意就是在这个单词中一共有两个字母重复的频率最高,分别是c和e,这个highest relative frequency是2/7>>> func=lambda w: '{0},{1[0]}/{2}'.format(*zip(*filter(lambda x:x[1]>1, __import__('c原创 2017-08-29 00:39:03 · 488 阅读 · 0 评论 -
一个把json数据批量插入SQL SERVER 的Python脚本
把json数据批量插入SQL SERVER 的Python脚本原创 2017-08-24 11:37:30 · 2106 阅读 · 0 评论 -
python实现对指定字符串补足固定长度倍数分组输出
# 把一个字符串按给定长度拆分; # 长度不是给定长度整数倍的字符串在后面补数字0。from textwrap import wrapwidth = 8text = 'urivthvtlqqerctlxmjvkgvfclaaduwmaadedpadanl'print '\n'.join(wrap(text + '0'*(width-len(text) % width), w原创 2017-08-05 22:36:39 · 1737 阅读 · 0 评论 -
Python处理逆波兰表达式
Python处理逆波兰表达式的方法原创 2017-08-16 15:57:18 · 1633 阅读 · 0 评论 -
Python中的__new__()方法的使用实例
Python中的__new__()方法的使用实例原创 2017-08-18 23:00:16 · 1491 阅读 · 0 评论 -
python的面向对象系统中object和type之间的关系
Python中所有东西都是对象,比较特殊的是:object和type是python中的两个源对象,它们是互相依赖对方来定义,不能分割来说,就如同讨论“先有鸡还是现有蛋”,一样让人蛋疼。先介绍有两个黑魔法在后面要用到:obj.__bases__ 指这个对象的父类,就是说从谁继承来的。obj.__class__ 指这个对象的类型,类的类型是typePython的面向对象系统有两条线索。...原创 2018-09-07 11:43:17 · 559 阅读 · 0 评论