经历移植jinja2到python3的痛苦之后,我把项目暂时放一放,因为我怕打破python3的兼容。我的做法是只用一个python2的代码库,然后在安装的时候用2to3工具翻译成python3。不幸的是哪怕一点点的改动都会打破迭代开发。如果你选对了python的版本,你可以专心做事,幸运的避免了这个问题。来自MoinMoin项目的ThomasWaldmann通过我的python-modernize跑jinja2,并且统一了代码库,能同时跑python2,
系统 2019-09-27 17:49:06 1884
判断是否xx开始使用startswith示例代码:String="12345上山打老虎"ifstr(String).startswith('1'):#判断String是否以“虎”结尾print("有老虎")else:print("没老虎")执行结果:有老虎判断是否xx结尾使用endswith示例代码1:String="12345上山打老虎"ifstr(String).endswith('虎'):#判断String是否以“虎”结尾print("有老虎")el
系统 2019-09-27 17:48:27 1884
随便在网上找了找,感觉都是讲半天讲不清楚,这里写一下。defgenerator():whileTrue:receive=yield1print('extra'+str(receive))g=generator()print(next(g))print(g.send(111))print(next(g))输出:1extra1111extraNone1为什么会这样呢,点进send就能看到一句话send:Resumesthegeneratorand"sends"
系统 2019-09-27 17:48:19 1884
分号不要在行尾加分号,也不要用分号将两条命令放在同一行.行长度每行不超过80个字符例外:长的导入模块语句注释里的URL不要使用反斜杠连接行.Python会将圆括号,中括号和花括号中的行隐式的连接起来,你可以利用这个特点.如果需要,你可以在表达式外围增加一对额外的圆括号.Yes:foo_bar(self,width,height,color='black',design=None,x='foo',emphasis=None,highlight=0)if(wi
系统 2019-09-27 17:48:08 1884
Pythonlist内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列。1)排序基础简单的升序排序是非常容易的。只需要调用sorted()方法。它返回一个新的list,新的list的元素基于小于运算符(__lt__)来排序。>>>sorted([5,2,3,1,4])[1,2,3,4,5]你也可以使用list.sort()方法来排序,此时list本身将被修改。通常此方法不如sorted()方便,
系统 2019-09-27 17:47:37 1884
1.a=[]arrays=[a*3]arrays其实为[[]]2.arrays=[a]*N看上去是创建了二维数组,但是只是创建N个指向a的引用,所以一旦a改变,arrays中N个list也会随之改变eg:a=[]N=3arrays=[a]*3arrays[0].append(1)#看上去只为第一个list添加整数1,实际上---print(arrays)输出为[[1],[1],[1]]3.arrays=[[]foriinrange(N)]eg:N=3arr
系统 2019-09-27 17:47:28 1884
类代码:#-*-coding:gbk-*-importosclassTABFILE:def__init__(self,filename,dest_file=None):self.filename=filenameifnotdest_file:self.dest_file=filenameelse:self.dest_file=dest_fileself.filehandle=Noneself.content=[]self.initflag=Falsesel
系统 2019-09-27 17:47:28 1884
windows10:1,先要pip安装pydotplus和graphviz:pipinstallpydotpluspipinstallgraphviz2,www.graphviz.org下载msi文件并安装。3,系统环境变量path中增加两项:C:\ProgramFiles(x86)\Graphviz2.38\binC:\ProgramFiles(x86)\Graphviz2.38#确认graphviz是安装在上面路径当中。4,python中使用方法:fr
系统 2019-09-27 17:47:26 1884
目的是能使用Python进行rtmp推流,方便在h264帧里加入弹幕等操作。librtmp使用的是0.3.0,使用树莓派noir官方摄像头适配的。通过wireshark抓ffmpeg的包一点点改动,最终可以在red5和斗鱼上推流了。没怎么写过python,有不恰当的地方请包涵。上代码:#--coding:utf-8--#http://blog.csdn.net/luhangleiimportpicameraimporttimeimporttraceback
系统 2019-09-27 17:47:12 1884
#堆排序defheap_sort(arr):root=len(arr)//2-1while(root>=0):heap_adjust(arr,root,len(arr)-1)root=root-1#此时生成的大顶堆,满足每个根节点为子树中最大,因此,之后只需要对最顶的子树进行调整i=len(arr)-1whilei>=0:arr[0],arr[i]=arr[i],arr[0]heap_adjust(arr,0,i-1)i=i-1defheap_adjust
系统 2019-09-27 17:45:50 1884