概述递归函数即直接或间接调用自身的函数,且递归过程中必须有一个明确的递归结束条件,称为递归出口。递归极其强大一点就是能够遍历任意的,不可预知的程序的结构,比如遍历复杂的嵌套列表。递归求和我们可以利用递归函数实现一个Python内置函数sum()的递归版。#递归defd_sum(L):ifnotL:return0else:returnL[0]+d_sum(L[1:])sum_l=d_sum(range(10))print(sum_l)示例结果45该递归函数怎
系统 2019-09-27 17:55:52 2338
这是一个命令行环境的五子棋程序。使用了minimax算法。除了百度各个棋型的打分方式,所有代码皆为本人所撸。本程序结构与之前的井字棋、黑白棋一模一样。有一点小问题,没时间弄了,就这样吧。一、效果图(略)二、完整代码fromfunctoolsimportwrapsimporttimeimportcsv'''五子棋Gobang作者:hhh5460时间:20181213'''#1.初始化棋盘#------------definit_board():'''初始化棋
系统 2019-09-27 17:54:48 2338
本文实例讲述了Python循环中else,break和continue的用法。分享给大家供大家参考,具体如下:在看Python的文档的时候看到了for和while语句和C语言中有一个最大的区别―可以有一个可选的else语句。这个语句的执行触发机制让我不大明白,通过代码测试才了解了什么情况下触发else语句。“凡存在,皆合理”,Python的设计者肯定是有他的目的,现在咱们来探究一番。以for语句为例,开发环境Python3.4。Python循环中的else
系统 2019-09-27 17:54:43 2338
原文链接:https://www.toutiao.com/i6726144871607828996/https://www.toutiao.com/i6726144871607828996/这个是本人在别的地方的网址,里面有详细介绍
系统 2019-09-27 17:54:06 2338
今天为大家整理了32个Python爬虫项目。整理的原因是,爬虫入门简单快速,也非常适合新入门的小伙伴培养信心。所有链接指向GitHub,祝大家玩的愉快~O(∩_∩)OWechatSogou[1]-微信公众号爬虫。基于搜狗微信搜索的微信公众号爬虫接口,可以扩展成基于搜狗搜索的爬虫,返回结果是列表,每一项均是公众号具体信息字典。DouBanSpider[2]-豆瓣读书爬虫。可以爬下豆瓣读书标签下的所有图书,按评分排名依次存储,存储到Excel中,可方便大家筛选
系统 2019-09-27 17:52:24 2338
应用场景在很多关键词提取任务中,使用tfidf等方法提取得到的仅仅是若干零碎词汇。这样的零碎词汇无法真正的表达文章的原本含义,我们并不想要它。例如:>>>text='朝鲜确认金正恩出访俄罗斯将与普京举行会谈...'>>>keywords=['俄罗斯','朝鲜','普京','金正恩','俄方']在很多时候,我们往往需要更细化的短语描述,来作为文本的关键信息展示。这样的需求在生成词云、提供摘要阅读、关键信息检索等任务中都非常重要。例如:>>>phrases=[
系统 2019-09-27 17:52:22 2338
效果基于Python3。在自己写小工具的时候因为这个功能纠结了一会儿,这里写个小例子,供有需要的参考。小例子,就是点击按钮打开路径选择窗口,选择后把值传给Entry输出。效果预览这是选择前:选择:选择后:代码很基础的写法。fromtkinterimport*fromtkinter.filedialogimportaskdirectorydefselectPath():path_=askdirectory()path.set(path_)root=Tk()p
系统 2019-09-27 17:51:31 2338
我们在做webUI自动化时,经常会碰到下拉框,如下图:所上图,下拉框的源代码如下:苹果香蕉菠萝梨子假如我们要选择‘菠萝',我们将怎么实现呢?首先我们要定位水果框,再定位水果下面的元素,如下图所示:具体代码如下:fromseleniumimportwebdriverfromselenium.webdriver.support.selectimportSelect#首先必须要导入select包才能定位fromtimeimportsleepdr=webdrive
系统 2019-09-27 17:49:20 2338
例子是输出九九乘法表如果按照如下程序写:#输出九九乘法表foriinrange(10):forjinrange(1,i+1):print("{}*{}={:2}".format(j,i,i*j))print('')就会出现下面的输出:这并不是我们想要的形式。print()会自动换行。python3中end属性默认为换行符\n,此时将end属性改为‘',就不会自动换行了。只需要将print("{}*{}={:2}".format(j,i,i*j))改为pri
系统 2019-09-27 17:48:03 2338
前言人生苦短,我用python。学习python怎么能不搞一下词云呢是不是(ง•̀_•́)ง于是便有了这篇边实践边记录的笔记。环境:VMware12pro+CentOS7+Python2.7.5安装系统之前一直用的是win10子系统,现在试试CentOS,CentOS官网下载最新系统dvd版安装到VMware12pro。网上很多教程。例如这个链接。等待安装完成后开始。第一个命令用Ubuntu的时候没有的命令会提示你安装,感觉很简单的事。但是到CentOS上
系统 2019-09-27 17:46:29 2338