- 博客(44)
- 收藏
- 关注
原创 PicGo+jsDelivr+GitHub搭建免费cdn加速图床
前言基于PicGo + GitHub+jsDelivr搭建免费的CDN加速图床。下载&安装PicGoPicGo 下载地址: https://github.com/Molunerfinn/picgo/releases,如图下载正常安装:创建 GitHub 仓库可在自己的GitHub账户下建立一个新的仓库或者和我这样新建一个专门用来放这些杂七杂八东西的组织,在组织里新建仓库:生成Token点自己头像,点 Settings 点Developer settings,再点
2021-04-11 17:44:33 364
原创 Leecode-刷题目录(Python)
第一周(递归)leetcode 104.二叉树的最大深度题目描述题解leetcode 62.不同路径剑指 Offer 16. 数值的整数次方leetcode 4. 寻找两个正序数组的中位数
2021-05-16 21:58:47 325
原创 数据结构与算法之美
数据结构与算法之美概念数据结构指一组数据的存储结构图书馆储藏书籍,为了方便查找,一般会将书籍分门别类进行“存储”;按照一定规律编号,就是书籍这种“数据”的存储结构算法操作数据的一组方法那如何来查找一本书呢?有很多种办法,你当然可以一本一本地找,也可以先根据书籍类别的编号,是人文,还是科学、计算机,来定位书架,然后再依次查找;笼统地说,这些查找方法都是算法数据结构是为算法服务的,算法要作用在特定的数据结构之上roadMap脑图 复杂度分析时间复杂度最好、最坏、平
2021-04-11 15:09:00 760
原创 高性价比办公笔记本推荐(202003)
起因大学室友突然找到我说自己的那台老电脑太卡了,要换个办公用电脑,而我是我们寝室唯一一个野生程序员,所以,这个大任就交给我了推荐话不多少,直接上推荐列表,无脑的根据预算与个人喜好从下方推荐中挑选就好免责声明:无任何利益相关,只是记录下劳动结果,顺便给大家做个参考,所以,这里只推荐机型及京东链接。amd 系列(预算有限AMD,不要太爽)联想(Lenovo)小新Pro13.3英寸全...
2020-03-29 19:41:09 1611
原创 一句话系列:姓名模糊匹配算法
一句话系列:姓名模糊匹配算法关键点:使用相同字符做切片,根据切片结果,进行匹配(split)功效:对中文姓名进行模糊匹配import relist_ = [("赵紫斌", "赵*斌"), ("李方雪", "李**"), (
2018-11-19 19:14:52 4837
原创 白话文系列:正则split&字符串split
白话文系列:re.split&str.split正则split:一次能处理多个更灵活能保留分割符字符串split:简单好用a ="王大锤"b = "*大*"import repat = u"([\u4e00-\u9fff]+)"pattern = re.compile(pat)results = pattern.findall(b)print(re...
2018-11-19 19:05:55 382
原创 一句话系列:列表(list)去除所有指定元素
一句话系列:列表(list)去除所有指定元素功效:迅速从列表中剔除不需要的数据from operator import is_notfrom functools import partialL = [0, 23, 234, 89, '', 0, 35, 9]print([i for i in L if i not in [None]])print(list(filter(parti...
2018-11-19 18:53:17 3672
原创 一句话系列:字符串清洗(邻位去重&去所有空格)
一句话系列:字符串清洗(邻位去重&去所有空格)功效:邻位去重去除所有空格符import itertoolsdata = "测测 试试试""".join(([i[0] for i in itertools.groupby("".join(data.split()))]))...
2018-11-19 18:47:33 709
原创 报错:unzip2: command not found
问题安装anaconda时,报错:bunzip2: command not found解决办法安装bzip2,yum install -y bzip2
2018-11-13 17:47:41 446
原创 Pandas auto convert list to tuple error
Pandas 自动转格式(list to tuple)问题问题描述一向稳定的线上,突然报出一个错误:AttributeError: 'tuple' object has no attribute 'remove'意思是元组(tuple)没有remove方法,但是代码逻辑设计的是针对列表(list)使用的,且安全生产了很久很久……结果经过不懈努力,目前暂时结论:pandas在处理某...
2018-11-07 19:17:15 616
原创 时间戳(timestamp)、时间字符串(datetimestr)、时间(datetime)之间的相互转换
总览# 时间戳转时间字符串(timestamp to datetimeStr)def timestampToDateStr(stamps, frmt='%Y-%m-%d %H:%M:%S'):# return time.strftime(frmt, time.localtime(stamps)) return datetime.fromtimestamp(stamps).st...
2018-10-31 20:03:31 6250
原创 Python 获取时间段内的随机时间(list)、时间戳(list)
获取两个时间点间的随机时间方案一# python2 不兼容,python3正常import datetime,randomdef randomtimes(start, end, n, frmt="%Y-%m-%d"): stime = datetime.datetime.strptime(start, frmt) etime = datetime.datetime.strp...
2018-10-31 19:35:06 12132 2
原创 获取6个月前首日的时间戳
获取6个月前首日的时间戳先获取月份在获取首日再转换为时间戳import time,datetimefrom dateutil.relativedelta import relativedeltatime.mktime(time.strptime((datetime.today() + relativedelta(months=-5)).strftime('%Y-%m-01 00:0...
2018-10-31 19:23:56 1557
原创 Python获取mongo文档的size大小
使用bson模块得到mongo返回文档大小import bsonres = db['log'].find_one({"sid": test_id})print len(bson.BSON.encode(res)) # Bprint len(bson.BSON.encode(res))*1.0/1024/1024 # MBprint len(bson.BSON.encode(res))*1...
2018-10-29 09:56:24 2772
原创 python中使用mongo中的_id(ObjectId)
在Python中导入ObjectIdfrom bson.objectid import ObjectIda = [ObjectId('5bd184790640307f2515c99e'), ObjectId('5bd184790640307f2515c99f')]# map(lambda x: x.toString(), a)str(a)
2018-10-29 09:49:35 4723
原创 pandas对时间索引进行分割(truncate requires a sorted index)
情景开发时碰到需要截取近1个月,近3个月,近6个月的数据,进行统计分析使用truncate对df进行数据集截取,遇到截取数据不符合预期,且若时间序列无序会抛出异常挖一挖使用truncate时的索引必须先进行排序,不然会报错源码一进truncate方法就会检测index是否经过排序,没有排序,报错极端情况,若时间序列只有两个的时候不会报错,但是结果会不符合预期预期是截取掉201...
2018-10-15 19:28:12 5961 1
原创 python pandas 使用nunique去重报错:AttributeError: 'DataFrame' object has no attribute 'nunique'
使用pandas进行列去重功能报错AttributeError: 'DataFrame' object has no attribute 'nunique'解决方案 更新pandas版本即可print('Pandas version ' + pd.__version__)# Pandas version 0.19.2pip install -U panda...
2018-09-04 10:17:24 9854 4
原创 python 使用requests请求https输出警报InsecureRequestWarning
问题描述 使用requests请求https时会输出警告: python2.7/site-packages/requests/packages/urllib3/connectionpool.py:852: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verific...
2018-08-22 14:19:50 2418
原创 Python requests post 提交form-data表单
问题: 对接接口,发现对方的接口使用form-data进行数据提交,直接使用requests库的data参数对接,会报参数错误:params = { 'timestamp':timestamp, 'nonce':nonce, 'apikey':APIKEY, 'signature': signature}data = { 'name': n...
2018-08-22 14:03:24 126490 1
原创 mongo insert_many BulkWriteError
问题: 在对mongo插入数据时,报写入问题,报错信息如下:Traceback (most recent call last): File "/root/crs/call_history_crawler/worker/communicate.py", line 149, in insert_db_data if db[table].insert_many(data):...
2018-08-12 19:27:46 2360 1
原创 Python JSON文件 读写(缩进、排序、格式化)
写文件,格式化 indent: 缩进(一般填4,缩进4格); sort_keys: 是否排序(默认False–不排序)def write_info(file_name, file_info): with open('{}.json'.format(file_name), 'w') as fp: json.dump(file_info, fp, ind...
2018-08-12 19:24:58 17214 2
原创 Python 三元表达式(条件表达式)
条件表达式: 使用一行代码快速判断,替换复杂的多行if语句,使得代码简单可维护。# 如果条件为真,返回真,否则返回假condition_is_true if condition else condition_is_falseis_fat = Truestate = "fat" if is_fat else "not fat"元组条件表达式:# (返回假...
2018-08-12 19:18:19 11694
原创 Python 三大函数(Map、Filter、Reduce)
Map 将一个函数映射到一个输入列表的所有元素上。items = [1, 2, 3, 4, 5]squared = list(map(lambda x: x**2, items))# output:[1, 4, 9, 16, 25]map作用于一列表的函数:def multiply(x): return (x*x)def add(x): ...
2018-08-12 19:11:42 1396
原创 profile cProfile 效率分析
功效:对脚本进行简单的效率分析并生成分析图表test.py:import osimport sysdef process(filename): print filenamefor (dirpath, dirnames, filenames) in os.walk(sys.argv[1]): for filename in filenames: ...
2018-08-12 11:05:05 1028
原创 Python args and kwargs解析
*args: 传递一个非键值对的可变数量的参数列表给一个函数。def test_var_args(f_arg, *argv): print("first normal arg:", f_arg) for arg in argv: print("another arg through *argv:", arg)test_var_args('yas...
2018-08-12 10:58:45 483
原创 pandas 获取不符合条件的dataframe
search for “does-not-contain” on a dataframe in pandas 问题来源:做项目时,想拿到不符合条件的所有数据,比如:通话类型有好多种(主叫、被叫、呼转……),现在想分析所有非主叫数据,那么问题就来了。方法一:df[~df.col.str.contains(word)]>>> df = pd.DataFr...
2018-08-12 10:57:21 7959 2
原创 Python中给数值型str前面加0&保留小数位(The most pythonic way to pad zeroes to string)
The most pythonic way to pad zeroes to stringStrings:>>> n = '7'>>> n.zfill(3)>>> '007'>>> '{:0>3}'.f
2018-08-12 10:55:28 2406
原创 Python string 去掉标点符号 最佳实践
Python 字符串去掉标点符号最佳实践方法一: str.isalnum: S.isalnum() -> bool Return True if all characters in S are alphanumeric and there is at least one character in S, False otherwise.>>&a
2018-08-12 10:44:27 42479 7
原创 Python代码调试 Pdb(Python debugger)
Pdb(Python debugger): 主旨:方便在开发、测试、DEBUG时的代码调试命令行运行: 直接在运行脚本时 添加-m pdb参数,如下:python -m pdb my_script.py脚本内部运行: 在代码中需要调试处添加如下代码,正常执行脚本:import pdb;pdb.set_trace()常用命令: 进入p...
2018-08-12 10:39:33 550
原创 python rrule 月份日期超限bug
http://dateutil.readthedocs.io/en/stable/_modules/dateutil/rrule.html月份日期超限 BUG Per RFC section 3.3.10, recurrence instances falling on invalid dates and times are ignored rather than coerced:...
2018-08-06 21:44:42 1209 2
原创 python 迭代器(iterators)&生成器详解(Generators)
可迭代对象(iterable): 能提供迭代器的任意对象;只要定义了一个迭代器的iter方法或定义了支持下标索引的getitem方法,那就是一个可迭代对象。迭代器(iterators): 任意对象,只要定义了next或者next方法,那就是一个迭代器迭代(iteration): 从某个地方(如列表)取出一个元素的过程;使用一个循环来遍历某个东西(如列表)...
2018-08-06 21:37:27 738
原创 Ubuntu 在使用add-apt-repository加过PPA之后,出现apt-get update失败
情景 在使用add-apt-repository添加一个ppa之后,发现该ppa找不到了,或者失效了,需要移除该ppa,不然每次apt-get update检查均会报错错误截图 解决办法# 列出添加的ppals /etc/apt/sources.list.d# 移除指定的失效或者想删除的ppasudo rm -i /etc/apt/sources.list.d/x...
2018-08-05 15:26:49 3595
原创 Ubuntu apt-get 换源(阿里源)
首先,备份现有源sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak其次,打开源列表sudo vim /etc/apt/sources.listsudo gedit /etc/apt/sources.list再次,清除文件内容,添加阿里源,保存文件deb http://mirrors.aliyun.com/ubuntu...
2018-08-05 15:07:44 2232
原创 Python try...except使用bug
情景描述 Python开发时,使用try…except进行异常捕捉; 容易忽略这样一个问题:try 里面成功执行的代码就是成功的,如果报错,并不会回滚,只会把失败和未执行的代码替换成except里面的代码继续执行代码如下: 结果: 可见,b是成功执行了,字典也是成功插入一个字段的。...
2018-08-05 00:15:23 555
原创 如何实现操作LInux一样操作Windows?
如何实现与操作Linux一样去操作Windows? 最佳方案 安装GIt Windows版,使用自带的Git Bash,完美解决问题操作如下:
2018-08-04 23:59:38 752
原创 python set 交集、并集、差集
交集(intersection)example:valid = set(['yellow', 'red', 'blue', 'green', 'black'])input_set = set(['red', 'brown']) print(input_set.intersection(valid))### 输出:set(['red'])# 方法一:>>> a...
2018-08-04 23:38:16 41502
原创 从dict中按需提取子集(Python dict)
需求给你一个条件,从已给字典中构造一个符合条件的新字典,为原字典的子集。解决方案使用字典推导式:prices = { 'ACME': 45.23, 'AAPL': 612.78, 'IBM': 205.55, 'HPQ': 37.20, 'FB': 10.75}# Make a dictionary of all prices o...
2018-08-04 05:35:00 9302
原创 Markdown 常用语法速查
标题(一)代码:# 一级标题## 二级标题### 三级标题#### 四级标题##### 五级标题###### 六级标题 效果:标题(二)代码:标题(#)==标题(##)--效果:无序列表代码:- 文本1 * 二级文本- 文本2- 文本3效果: 文本1 二级文本 文本2...
2018-08-04 05:23:39 381
翻译 命运从不缺席(美文节选)
优秀的人,不是不合群,而是他们合群的人里面没有你纽约时间比加州时间早三个小时, New York is 3 hours ahead of California,但加州时间并没有变慢。 but it does not make California slow.有人22岁就毕业了, Someone graduated at the age of 22,但等了五年才找到好的工作! ...
2018-08-04 05:13:25 288
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人