Note for Python
anddyhua
这个作者很懒,什么都没留下…
展开
-
Python gzip/bzip2/zlib/lz4/snappy压缩对比
最近折腾压缩,想要将单个大文件进行压缩,对比了多种压缩算法,考虑到性价比,最后还是决定放弃压缩。测试的时候写了一个简单的 Python脚本去测试。from functools import wrapsimport timeimport osimport gzipimport bz2import zipfileimport zlibimport snappyimport osdef print_run_time(fun): @wraps(fun) def run_tim原创 2021-05-08 17:14:06 · 1087 阅读 · 0 评论 -
Python 拆分数据数据导入hive
创建weekday_mapper.py:import sysimport datetimefor line in sys.stdin: line = line.strip() userid, movieid, rating, unixtime = line.split('\t') weekday = datetime.datetime.fromtimestamp(float(unixtime)).isoweekday() print '\t'.join([userid, moviei原创 2021-05-08 04:13:18 · 107 阅读 · 0 评论 -
MATLAB转换为Python
SMOP 是小型Matlab和八度到Python编译器。SMOP将matlab翻译成python。尽管matlab和数字python之间有明显的相似之处,但在现实生活中有足够的差异使手工翻译不可行。 SMOP生成人类可读的蟒蛇,这似乎也比八度快。速度有多快?表1显示了“移动家具”的计时结果。似乎对于该程序,转换为python导致加速大约两倍,并且 使用cython 将SMOP运行时库编译runtime.py为C 实现了额外的两倍加速。这个伪基准测量标量性能,而我的解释是标量计算对八度组不太感兴趣。源代码W翻译 2021-05-08 03:11:02 · 1485 阅读 · 0 评论 -
Python eval()函数
eval(source[, globals[, locals]]) -> value 功能:将字符串str当成有效的表达式来求值并返回计算结果。 参数: source:一个Python表达式或函数compile()返回的代码对象 globals:可选。必须是dictionary locals:可选。任意map对象 说白了就是他可以让把字符串转化成真正python支持操作,打比方eval(“import(‘os’).system(‘ls’)”)eval(“i原创 2021-05-04 22:18:32 · 580 阅读 · 0 评论 -
Python lambda问题
在lambda中想简单无别名参数好像不行,只能全局变量和局部变量显示声明:a={‘a’:1}func(lambda key:a[key],a)没有别名,lambda无法支持:func(lambda key:?[key],{‘a’:1})>>> dir()['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']>>>原创 2021-05-02 02:10:20 · 104 阅读 · 0 评论 -
Python filter函数的基本用法
filter函数用来过滤数据,可以通过指定函数对数据处理后过滤,是fun(x) for x in inter(x) if x.value >0 的加强版。1.基本示例:def is_odd(n): return n % 2 == 1newlist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])print(f'odd:{newlist}')print(f'odd:{list(newlist)}')输出:odd:<fil原创 2021-04-27 10:43:03 · 580 阅读 · 0 评论 -
Python 迷惑行为
看下如下代码,1是如何消失的: n1=1e18 n2=-1e18 print(f'result={ n1+1+n2 }')结果:result=0.0原创 2021-04-26 14:42:57 · 93 阅读 · 0 评论 -
Python中数组(list/array)不会复制,而是直接引用
对于单个变量,如:将数据直接赋值进行复制后,变量前后独立,是位于两块空间内的。但对于数组(list 或 numpy.array):相当于引用,是位于同一块空间内的复制list的五种方法:1. a[:]2. list(a)3. a*14. copy.copy(a)5. copy.deepcopy(a)从以上可以看出,使用 a[:], list(a)...转载 2019-07-21 01:48:44 · 643 阅读 · 0 评论 -
Python使用R的ggplot
"""module prequsites:statsmodels installed by wheelmatplotlibpandasnumpyscipy"""from ggplot import *import pandas as pd# Error# 'unicodeescape' codec can't decode bytes in position 2-3: tr...原创 2018-08-04 23:39:09 · 1010 阅读 · 0 评论 -
Python中实现R的seq函数
R的seq函数定义很简单:seq(from, to, by= ) from 开始数,to结束数,by步长> seq(1,5,0.5)[1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0Python 用range函数>>> [ (i+5)/10 for i in range(0,50,5)][0.5, 1.0, 1.5, 2.0,...原创 2018-08-04 11:17:26 · 7781 阅读 · 0 评论 -
Python3中yapf的命令行
网上的命令行都是相互抄的,根本没有实践过,先看看网上的yapf命令行:--style='{based_on_style: google, indent_width: 4}'Python3.7报错信息:yapf: "'{based_on_style:chromium,indent_width:4}'" is not a valid style or file path查看源码逻辑def _Creat...原创 2018-07-12 00:54:52 · 1874 阅读 · 0 评论 -
Python的一道面试题
题目:将下面的函数按照执行效率高低排序。它们都接受由0至1之间的数字构成的列表作为输入。这个列表可以很长。一个输入列表的示例如下:[random.random() for i in range(100000)]。def f1(lIn): l1 = sorted(lIn) l2 = [i for i in l1 if i<0.5] return [i*i ...原创 2018-07-11 18:01:53 · 236 阅读 · 0 评论 -
Python实现的图片批量下载(v3.5最新)
网上的版本太旧,更改如下:#coding=utf-8#Python v3.5import urllib.requestimport redef getHtml(url): html = urllib.request.urlopen(url).read() # print (html) return repr(html)def getImg(html):原创 2015-10-30 11:06:33 · 1517 阅读 · 0 评论