Python

python SSTI tornado render模板注入

原理tornadorender是python中的一个渲染函数,也就是一种模板,通过调用的参数不同,生成不同的网页,如果用户对render内容可控,不仅可以注入XSS代码,而且还可以通过{{}}进行传递变量和执行简单的表达式。简单的理解例子如下:------------------------------------------------------------------------------------importtornado.ioloopimpo

系统 2019-09-27 17:51:43 2253

Python

装13失败后,我决定使用Python为生僻字批量注音

装13的冷场“龙生九子,各不相同…”囚牛、睚眦、嘲风、蒲牢、狻猊、霸下、狴犴、负屃、螭吻。都说提笔忘字丢人,可至少还有提笔的机会。随着信息化时代的普及,原来越多的人成了半文盲。怎么说?电脑前打字敲的一二一,可提起笔来就忘字。从前特别喜欢钢笔,笔袋里放的凌美、百利、永生、英雄一堆,买的北碳、毕加索、派克、百利金各式牌子的墨水。结果感觉半年多都没动过这些陈年老货了。下午聊天装13说到龙生九子,本来吹得正欢,结果朋友问老七bìàn怎么写,然后…瞬间懵逼了,这个1

系统 2019-09-27 17:51:38 2253

Python

python uuid模块使用实例

uuid是一种唯一标识,在许多领域作为标识用途。python的uuid模块就是用来生成它的。闲话不说,python提供的生成uuid的方法一共有4种,分别是:1.从硬件地址和时间生成2.从md5算法生成3.随机生成4.从SHA-1算法生成他们在uuid模块里对应uuid1,uuid3,uuid4,uuid5这几个方法,注意没有uuid2。下面是示例:复制代码代码如下:#-*-encoding:gb2312-*-importuuidprintuuid.uui

系统 2019-09-27 17:50:27 2253

Python

Python,pandas中DataFrame的选取总结

pandas中选取方式有很多种,最常用的是一下几种:直接选取(单维度选取)、iloc();loc();ix()函数选取(区域选区),at();iat()函数选取(单元格选取)。通过以上几种方式可以实现:选取某些行、某些列、某区域(同时选择某些行和某些列)、某个单元格,还可以进行条件选区。具体实现方法如下。首先创建一个DataFrame.importpandasaspdimportnumpyasnpdata={'name':['Joe','Mike','Ja

系统 2019-09-27 17:49:56 2253

Python

python区块及区块链的开发详解

接着上一篇交易记录整合交易类,这里描述区块的开发。首先我们要明白一个区块,需要的内容,包括交易记录集合,时间戳,哈希,上一个区块的哈希。明白了这个,下面就容易代码开发了。importdatetimeimporthashlibfromMessageimportDaDaMessage,InvalidMessagefromTransactionimportTransactionclassBlock:#不定参数,*args,区块集合def__init__(self

系统 2019-09-27 17:49:31 2253

Python

哦?原来Python 面试题是这样的,Python面试题No19

本面试题题库,由公号:非本科程序员整理发布第1题:是否遇到过python的模块间循环引用的问题,如何避免它?这是代码结构设计的问题,模块依赖和类依赖如果老是觉得碰到循环引用可能的原因有几点:可能是模块的分界线划错地方了可能是把应该在一起的东西硬拆开了可能是某些职责放错地方了可能是应该抽象的东西没抽象总之微观代码规范可能并不能帮到太多,重要的是更宏观的划分模块的经验技巧,推荐uml,脑图,白板等等图形化的工具先梳理清楚整个系统的总体结构和职责分工采取办法,从

系统 2019-09-27 17:48:59 2253

Python

用Python实现一个简单的多线程TCP服务器的教程

最近看《python核心编程》,书中实现了一个简单的1对1的TCPserver,但是在实际使用中1对1的形势明显是不行的,所以研究了一下如何在server端通过启动不同的线程(进程)来实现每个链接一个线程。其实python在类的设计上已经考虑到了这一方面的需求,我们只要在自己的server上继承一下SocketServer.BaseRequestHandler就可以了。server端代码如下:#!/usr/bin/envpythonimportSocket

系统 2019-09-27 17:48:11 2253

Python

python类之特殊属性和魔术方法

一python特殊属性1总述属性含义_name_类,函数,方法等的名字_module_类定义所现在的模块名_class_对象或类所属的类_bases_类的基类的元素,顺序为他们在基类列表中出现的顺序_doc_类/函数的文档字符传,如果没有定义则为None_mro_类的mro,class.mro()返回_dict_类或实例的属性,可写的字典_dir_返回了类或者对象所有成员列表,dir()函数调用的是_dir_(),如果提供了_dir_(),则返回属性列表,

系统 2019-09-27 17:47:04 2253

Python

Python升级提示Tkinter模块找不到的解决方法

一、安装tkinter在Linux中python默认是不安装Tkinter模块,复制代码代码如下:[root@li250-193~]#pythonPython2.6.6(r266:84292,Feb222013,00:00:18)[GCC4.4.720120313(RedHat4.4.7-3)]onlinux2Type"help","copyright","credits"or"license"formoreinformation.>>>importTki

系统 2019-09-27 17:46:22 2253

Python

Python切片用法实例教程

本文以实例形式讲述了Python中切片操作的用法,分享给大家供大家参考借鉴,具体如下:取一个list或tuple的部分元素是非常常见的操作。比如,一个list如下:>>>L=['Michael','Sarah','Tracy','Bob','Jack']取前3个元素,应该怎么做呢?比较笨的办法如下:>>>[L[0],L[1],L[2]]['Michael','Sarah','Tracy']之所以是笨办法是因为扩展一下,取前N个元素就没辙了。取前N个元素,也

系统 2019-09-27 17:45:29 2253

Python

python利用装饰器进行运算的实例分析

今天想用python的装饰器做一个运算,代码如下>>>defmu(x):def_mu(*args,**kwargs):returnx*xreturn_mu>>>@mudeftest(x,y):print'%s,%s'%(x,y)>>>test(3,5)Traceback(mostrecentcalllast):File"",line1,intest(3,5)File"",line3,in_mureturnx*xTypeError:unsupportedop

系统 2019-09-27 17:37:36 2253

Python

python 批量解压压缩文件的实例代码

下面给大家介绍python批量解压压缩文件的实例代码,代码如下所述;#/usr/bin/python#coding=utf-8importos,sysimportzipfileopen_path='e:\\data'save_path='e:\\data'os.chdir(open_path)#转到路径#首先,通过zipfile模块打开指定位置zip文件#传入文件名列表,及列表文件所在路径,及存储路径defDecompression(files,file_

系统 2019-09-27 17:54:33 2252

Python

python实现进度条

python实现进度条简单演示sys.stdout.write()输出不会自动换行,没有end,可用转义字符自行控制/n换行/r回车到本行首,可刷新输出如用sys.stdout.write()和\r实现自定义进度条importtimeimportsysdefmain():j=0foriinrange(100):j+=1sys.stdout.write('\r已经上传了%%%d'%(j/100*100))time.sleep(0.1)if__name__==

系统 2019-09-27 17:53:56 2252

Python

python高级编程——入门语法(一)

元类在python中一切皆对象,类也是对象,只不过类是一个创建对象的对象,我们可以在类中动态的创建一个类,比如deffunc(name):ifname=="Plane":classPlane(object):passreturnPlaneelse:classMetrorolite(object):passreturnMrtroolite虽然根据上述代码可以动态创建一个类,但是整个类的代码仍需要我们编写的type()有两种作用:1、检查对象类型classPe

系统 2019-09-27 17:53:29 2252

Python

简单了解python中的与或非运算

真的很重要,栽了个跟头!!!(虽然以前好像知道。。。)print(TrueorFalseandFalse)print((TrueorFalse)andFalse)#True#False这里有一个python运算符的优先级not>and>ornot>and>ornot>and>or有括号的除外运算返回的值是决定表达式运算结果的值。比如TrueorFalse、FalseorTrue返回True,TrueandFalse返回False。以上就是本文的全部内容,希

系统 2019-09-27 17:52:51 2252