- 军军小站|张军博客
搜索到与相关的文章
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 1872

Python

详解Python核心编程中的浅拷贝与深拷贝

一、问题引出浅拷贝首先看下面代码的执行情况:a=[1,2,3]print('a=%s'%a)#a=[1,2,3]b=aprint('b=%s'%b)#b=[1,2,3]a.append(4)#对a进行修改print('a=%s'%a)#a=[1,2,3,4]print('b=%s'%b)#b=[1,2,3,4]b.append(5)#对b进行修改print('a=%s'%a)#a=[1,2,3,4,5]print('b=%s'%b)#b=[1,2,3,4,

系统 2019-09-27 17:52:42 1872

Python

Spark学习实例(Python):输入源实时处理 Input Sources

在之前学习的RDD和DataFrame数据集主要处理的是离线数据,随着时代发展进步,我们会发现越来越多数据是在源源不断发回到数据中心,同时需要立刻响应给用户,这样的情况我们就会用到实时处理,常用的场景有实时显示某商场一小时人流密度、实时显示当天火车站人口总数等等。接下来从实时数据源说起,实时数据源主要有:FileSourceSocketSourceFlumeSourceKafkaSourceFileSource指的是文件作为数据来源,常用的有本地文件fil

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

Python

简述Python2与Python3的不同点

在Python2和Python3中都提供print()方法来打印信息,但两个版本间的print稍微有差异主要体现在以下几个方面:1.python3中print是一个内置函数,有多个参数,而python2中print是一个语法结构;2.Python2打印时可以不加括号:print'helloworld',Python3则需要加括号print("helloworld")3.Python2中,input要求输入的字符串必须要加引号,为了避免读取非字符串类型发生的

系统 2019-09-27 17:52:30 1872

Python

可能是最优雅的任意进制转换(python实现)

deftrans_map(cint):ifcint<0:print"不合法"returnelifcint<10:returncintelifcint>=10:returnchr(cint-10+65)#将一个m进制的数转换为一个n进制的数deftransfer(m,n,origin):num=anyToTen(m,origin)target=tenToAny(n,num)printtargetdefanyToTen(m,origin):#任意进制的数转换为

系统 2019-09-27 17:52:21 1872

Python

Python进阶之路 3.5.2 for循环

3.5.2for循环hello大家好,不知道在上节中大家练习while循环练习得怎么样了,相信大家都已经熟悉while循环了吧,那么现在我在这里在向大家讲解一下for循环。大家肯定也很懵圈,怎么有个while循环,又有个for循环,for循环又是干嘛的?相信很多刚接触编程的朋友一定很懵圈,哈哈......因为我当时也很懵圈。好了,废话不多说,接下来就给大家将一下for循环和while循环的区别,以及for循环是什么东西。while循环的功能非常强大,它可以

系统 2019-09-27 17:52:18 1872

Python

Python迭代器

print("我想打印一个字符串%s"%123)print("我想打印一个字符串",123)print("我想打印一个字符串{}".format(123))这三个输出有什么区别喃?Python中一个数据是否可以迭代(能否使用For)isinstance(需要判断的数据,Iterable)查看返回值,true则可以迭代,false不能迭代。如果创建一个可以迭代的对象?必须实现__iter__()方法在__iter__方法中需要返回一个具有__iter__方法

系统 2019-09-27 17:52:09 1872

Python

Python中的赋值、浅拷贝、深拷贝介绍

和很多语言一样,Python中也分为简单赋值、浅拷贝、深拷贝这几种“拷贝”方式。在学习过程中,一开始对浅拷贝理解很模糊。不过经过一系列的实验后,我发现对这三者的概念有了进一步的了解。一、赋值赋值算是这三种操作中最常见的了,我们通过一些例子来分析下赋值操作:str例复制代码代码如下:>>>a='hello'>>>b='hello'>>>c=a>>>[id(x)forxina,b,c][4404120000,4404120000,4404120000]由以上指

系统 2019-09-27 17:51:51 1872

Python

Python集训营45天—Day03 (分支和循环)

目录1.分支结构1.1初步介绍1.2使用案例1.3练习2.循环结构1.1初步介绍1.2使用案例1.分支结构1.1初步介绍至今,我们所写的Python代码都是顺序执行,但是有时候在代码中是需要进行逻辑判断的,比如用户输入用户名和密码,输入正确则验证通过,否则即验证失败。这个时候就会产生两个分支,而且两个分支只会有一条分支会走下去。当然,还有很多类似的场景,我们将这种结果称为"分支结构"或“选择结构”。语法格式:ifxxx1:事情1elifxxx2:事情2el

系统 2019-09-27 17:51:46 1872

Python

Win7 64位下python3.6.5安装配置图文教程

python安装教程,分享给大家。一、安装python1、首先进入网站下载:点击打开链接(或自己输入网址),进入之后如下图,选择图中红色圈中区域进行下载。2、下载完成后如下图所示3、双击exe文件进行安装,如下图,并按照圈中区域进行设置,切记要勾选打钩的框,然后再点击Customizeinstallation进入到下一步:4、对于上图中,可以通过Browse进行自定义安装路径,也可以直接点击Install进行安装,点击install后便可以完成安装了。5、

系统 2019-09-27 17:51:44 1872