高阶函数map/reducePython内建了map()和reduce()函数。我们先看map。map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。举例说明,比如我们有一个函数f(x)=x2,要把这个函数作用在一个list[1,2,3,4,5,6,7,8,9]上,就可以用map()实现如下:现在,我们用Python代码实现:deff(x):returnx*xr=m
系统 2019-09-27 17:53:59 2013
主要使用函数的递归方法,考虑过程如下:n,a,b,c(n代表罗汉塔块数,a,b,c代表三块柱子)若n=1时,只需从a》》》c若n>1时,需要把上面n-1块从a移动到b,底下1块从a移动到c,再把b上n-1移动到c函数实现如下:defmove(n,a,b,c):ifn==1:print(a,'>>>',c)else:move(n-1,a,c,b)move(1,a,b,c)move(n-1,b,a,c)print(move(3,'a','b','c'))
系统 2019-09-27 17:53:43 2013
python字符串替换是python操作字符串的时候经常会碰到的问题,这里简单介绍下字符串替换方法。python字符串替换可以用2种方法实现:1是用字符串本身的方法。2用正则来替换字符串下面用个例子来实验下:a='helloword'把a字符串里的word替换为python1、用字符串本身的replace方法复制代码代码如下:a.replace('word','python')输出的结果是hellopython2、用正则表达式来完成替换:复制代码代码如下:
系统 2019-09-27 17:53:34 2013
什么是异常?一般情况下,在python无法正常处理程序时就会发生一个异常(异常是python对象,表示一个错误),也就是我们俗称的程序崩了。异常就是程序运行时候发生错误的信号(在程序出现错误的时候,则会产生一个异常,若程序没有处理他,则会抛出该异常,程序的运行也随之终止)。异常的处理步骤:1、可预知的异常:如果错误发生的条件是可预知的,需要用if进行处理,在错误发生之前进行预防。2、未知的异常:try:代码块except异常类型:异常处理的方法else:如
系统 2019-09-27 17:53:08 2013
什么是特殊方法?当我们在设计一个类的时候,python中有一个用于初始化的方法$__init__$,类似于java中的构造器,这个就是特殊方法,也叫作魔术方法。简单来说,特殊方法可以给你设计的类加上一些神奇的特性,比如可以进行python原生的切片操作,迭代、连乘操作等。在python中,特殊方法以双下划线开始,以双下划线结束。一个大例子数学中有一个表示数的概念叫做向量,但是python中的数据类型却没有。我们来设法用python实现它。首先考虑,向量跟普
系统 2019-09-27 17:53:07 2013
walker经常用到当前时间和相对时间,用来统计程序执行的效率,简单记一下,便于copy。相对时间>>>importtime#相对时间>>>startTime=time.time()>>>'%.2fs'%(time.time()-startTime)'24.51s'格式化当前时间#格式化当前时间>>>time.strftime('%Y-%m-%d%H:%M:%S',time.localtime())'2016-01-0510:34:06'时间戳与时间的转换
系统 2019-09-27 17:50:52 2013
python读取和保存图片5种方法对比python中对象之间的赋值是按引用传递的,如果需要拷贝对象,需要用到标准库中的copy模块方法一:利用PIL中的Image函数这个函数读取出来不是array格式,这时候需要用np.asarray(im)或者np.array()函数。区别:np.array()是深拷贝,np.asarray()是浅拷贝copy.copy浅拷贝只拷贝父对象,不会拷贝对象的内部的子对象。copy.deepcopy深拷贝拷贝对象及其子对象例子
系统 2019-09-27 17:50:45 2013
这里先解释一下几个概念-位置参数:按位置设置的参数,隐式用元组保存对应形参.平时我们用的大多数是按位置传参.比如有函数deffunc(a,b,c),调用func(1,2,3).即a=1,b=2,c=3-关键字参数:可以通过关键字设置参数,不用关心参数位置,隐式用字典保存形参.比如有函数deffunc(a,b,c),调用func(b=1,c=2,a=3),即a=3,b=1,c=2普通格式复制代码代码如下:deffunc(opt_args):...return
系统 2019-09-27 17:50:13 2013
来源:枫恋寒链接:https://segmentfault.com/a/119000001.png"font-size:12px;">在Python中字符串连接有多种方式,这里简单做个总结,应该是比较全面的了,方便以后查阅。加号连接第一种,通过+号的形式:>>>a,b='hello','world'>>>a+b'helloworld'逗号连接第二种,通过,逗号的形式:>>>a,b='hello','world'>>>print(a,b)helloworld
系统 2019-09-27 17:47:09 2013
实现代码:#!/usr/bin/python//处理程序#filenamejiafa.py//文件名importsysimportrandomrunning=True//定义runningwhilerunning:a=random.randint(0,15)//定义a的值为0-15的随机数b=random.randint(0,10)//定义b的值为0-10的随机数printa,'*',b//输出题目he=a*bgauess=int(raw_input('P
系统 2019-09-27 17:38:29 2013