搜索到与相关的文章
Python

Python中eval带来的潜在风险代码分析

0x00前言eval是Python用于执行python表达式的一个内置函数,使用eval,可以很方便的将字符串动态执行。比如下列代码:>>>eval("1+2")>>>eval("[xforxinrange(10)]")[0,1,2,3,4,5,6,7,8,9]当内存中的内置模块含有os的话,eval同样可以做到命令执行:>>>importos>>>eval("os.system('whoami')")win-20140812chj\administrat

系统 2019-09-27 17:53:02 1719

Python

Python 字符编码处理总结

Python中经常遇到这样那样的字符编码问题,尤其在处理网页源码时(特别是爬虫中):UnicodeDecodeError:‘XXX'codeccan'tdecodebytesinposition12-15:illegalmultibyte...每次看到上面这段文字的时候,感觉整个世界都昏暗了,然后就只能各种搜索找资料,过后就忘了。下次遇到时就让世界再昏暗一次。为了彻底解决这个拦路虎,今天咱们就好好的来唠嗑唠嗑。下面以汉字'哈'来解释作示例解释所有的问题,汉

系统 2019-09-27 17:53:00 1719

Python

详解Python Qt的窗体开发的基本操作

本文章采用的是Qt4,是python(x,y)套件中集成的,为啥不集成Qt5呢,懒得装啊:)正文:首先看成品:这个程序的功能是输入原价和降价的百分比,计算出最后的价格。设计器部分然后就是开发阶段了,首先在QtDesigner中建立一个窗体,大概像图片中的样子,然后将控件都拖进去其中,“原价是多少啊”,“绿色的标标”这些文字类的控件是QLabel,第一个框框是QTextEdit,第二个标标是QDoubleSpinBox,或者使用QSpinBox都行,两者主要

系统 2019-09-27 17:52:48 1719

Python

python链接Oracle数据库

在配置python环境,并安装所需包后,运行下列代码~importpandasaspdfromsqlalchemyimportcreate_engineimportcx_Oracle#进行oracle服务器设置,用户名;密码;HOST数据库IP地址;PORT端口号;SERVICE_NAMEdb=cx_Oracle.connect('userid','password','10.10.1.10:1521/dbinstance')print(db.versio

系统 2019-09-27 17:52:32 1719

Python

python 装饰器详解

1、python装饰器最基础的函数1defsum1():2sum=1+23print(sum)4sum1()查看函数执行用了多长时间,写了几句代码插进去了:1importtime23defsum1():4start=time.clock()5sum=1+26print(sum)7end=time.clock()8print("timeused:",end-start)910sum1()可是随着继续翻看,对越来越多的函数感兴趣了,都想看下他们的运行时间如何,

系统 2019-09-27 17:52:26 1719

Python

Python核心基础(二):魔法函数

一:什么是魔法函数看一个简单的例子:classCompany:def__init__(self,employee__list):self.employee=employee__listcompany=Company(['tom','jack','jane'])employee=company.employeeforiteminemployee:print(item)打印结果无疑是tom,jack,jane。那么换一种方式,使用Python的魔法函数:cla

系统 2019-09-27 17:52:26 1719

Python

Python进阶之路 3.4.5 断言

3.4.5断言断言(assertions)的使用方式类似于if语句,只是在不满足条件时,会直接抛出异常。类似于下面的if语句(伪代码)ifnotcondition:#如果不满足条件,会直接抛出异常,程序会中断crashprogram那么究竟为什么需要这样的代码呢?主要原因为需要检测程序在某个地方是否满足条件,如果不满足条件,应该及时通知开发人员,而不是将这些bug隐藏起来,知道关键的时候在崩溃。其实在TDD中经常使用断言,TDD会在程序发现异常时执行断言,

系统 2019-09-27 17:52:20 1719

Python

Python网络爬虫——requests模块(1)

-基于如下5点展开requests模块的学习什么是requests模块requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求。功能强大,用法简洁高效。在爬虫领域中占据着半壁江山的地位。为什么要使用requests模块因为在使用urllib模块的时候,会有诸多不便之处,总结如下:手动处理url编码手动处理post请求参数处理cookie和代理操作繁琐......使用requests模块:自动处理url编码自动处理po

系统 2019-09-27 17:52:20 1719

Python

Python中操作MySQL入门实例

一、安装MySQL-python复制代码代码如下:#yuminstall-yMySQL-python二、打开数据库连接复制代码代码如下:#!/usr/bin/pythonimportMySQLdbconn=MySQLdb.connect(user='root',passwd='admin',host='127.0.0.1')conn.select_db('test')cur=conn.cursor()三、操作数据库复制代码代码如下:definsertdb(

系统 2019-09-27 17:52:20 1719

Python

深入理解Python中的元类(metaclass)

译注:这是一篇在Stackoverflow上很热的帖子。提问者自称已经掌握了有关PythonOOP编程中的各种概念,但始终觉得元类(metaclass)难以理解。他知道这肯定和自省有关,但仍然觉得不太明白,希望大家可以给出一些实际的例子和代码片段以帮助理解,以及在什么情况下需要进行元编程。于是e-satis同学给出了神一般的回复,该回复获得了985点的赞同点数,更有人评论说这段回复应该加入到Python的官方文档中去。而e-satis同学本人在StackO

系统 2019-09-27 17:52:16 1719