最近我用Python做了一个国际象棋程序并把代码发布在Github上了。这个代码不到1000行,大概20%用来实现AI。在这篇文章中我会介绍这个AI如何工作,每一个部分做什么,它为什么能那样工作起来。你可以直接通读本文,或者去下载代码,边读边看代码。虽然去看看其他文件中有什么AI依赖的类也可能有帮助,但是AI部分全都在AI.py文件中。AI部分总述AI在做出决策前经过三个不同的步骤。首先,他找到所有规则允许的棋步(通常在开局时会有20-30种,随后会降低到
系统 2019-09-27 17:53:42 2206
前言random是Python中与随机数相关的模块,其本质就是一个伪随机数生成器,我们可以利用random模块基础生成各种不同的随机数,以及一些基于随机数的操作。生成随机数相关生成0~1之间的浮点数importrandomr=random.random()print(r)r=random.random()print(r)示例结果:0.99282495336930850.474901555446297生成指定范围内的浮点数importrandomr=rand
系统 2019-09-27 17:53:07 2206
什么是运算符?本章节主要说明Python的运算符。举个简单的例子4+5=9。例子中,4和5被称为操作数,"+"称为运算符。Python语言支持以下类型的运算符:算术运算符比较(关系)运算符赋值运算符逻辑运算符位运算符成员运算符身份运算符运算符优先级接下来让我们一个个来学习Python的运算符。一.Python算术运算符以下假设变量:a=10,b=20:注意:Python3.x里,整数除整数,得到的是浮点数。>>>1/30.3333333333333333>
系统 2019-09-27 17:52:37 2206
一钉钉机器人使用场景钉钉机器人是钉钉群的高级扩展功能,可以简单实现将第三方服务信息聚合到钉钉群中,实现信息的自动同步,常用场景如下:聚合Github、Gitlab等源码管理服务,实现源码更新同步;聚合Trello、JIRA等项目协调服务,实现项目信息同步;支持Webhook自定义接入,实现更多可能性,例如:运维报警、自动化测试结果报告、工作&生活日程安排(上班打卡、下班吃饭、健身、读书、生日、纪念日...)的提醒;二获取自定义机器人的hook地址1.Web
系统 2019-09-27 17:48:56 2206
使用socket实现tcp通信,需导入socket模块1、服务端主要步骤:(1)创建socket:socket.socket(family=AF_INET,type=SOCK_STREAM,proto=0,fileno=None)family:AF_INET,AF_INET6,AF_UNIX,AF_CAN,AF_PACKET,AF_RDStype:SOCK_STREAM,SOCK_DGRAM,SOCK_RAW,或者其他SOCK_*proto:一般使用默认值
系统 2019-09-27 17:48:40 2206
练习一:假设你获取到了2017年内地电影票房前20的电影(列表a)和电影票房数据(列表b),那么如何更加直观的展示该数据?a=["战狼2","速度与激情8","功夫瑜伽","西游伏妖篇","变形金刚5:最后的骑士","摔跤吧!爸爸","加勒比海盗5:死无对证","金刚:骷髅岛","极限特工:终极回归","生化危机6:终章","乘风破浪","神偷奶爸3","智取威虎山","大闹天竺","金刚狼3:殊死一战","蜘蛛侠:英雄归来","悟空传","银河护卫队2"
系统 2019-09-27 17:47:08 2206
前言我们在python对数据进行操作时,经常会选取某一时间段的数据进行分析。这里为大家介绍两个我经常用到的用来选取某一时间段数据的函数:datetime()和pd.to_datetime()。(一)datetime()(1)获取指定的时间和日期。datetime(%Y,%m,%d,%H,%M,%S)datetime共有6个参数,分别代表的是年月日时分秒。其中年月日是必须要传入的参数,时分秒可以不传入,默认全为零。eg:(2)将Str和Unicode转化为d
系统 2019-09-27 17:46:40 2206
一、例子:我们对传参是有要求的必须传入一个元组,否则报错import_threadasthreadimporttimedefloop1(in1):print("Startloop1at:",time.ctime())print("我是参数",in1)time.sleep(4)print("Endloop1at:",time.ctime())defloop2(in1,in2):print("Startloop2at:",time.ctime())print(
系统 2019-09-27 17:45:45 2206
python创建一个类很简单只需要定义它就可以了.classCat:pass就像这样就可以了,通过创建子类我们可以继承他的父类(超类)的方法。这里重新写一下catclassCat:name='cat'classA(Cat):passprintA.name#cat经典类我们也可以这样,让A多继承。classCat:name='cat'classDog:name='dog'classA(Cat,Dog):passprintA.name#cat如果Cat类没有n
系统 2019-09-27 17:38:17 2206
index()方法确定字符串str,如果起始索引beg和结束索引end在末尾给出了找到字符串或字符串的一个子串。这个方法与find()方法一样,只是如果没有找到子符趾会抛出一个异常。语法以下是index()方法的语法:str.index(str,beg=0end=len(string))参数str--此选项指定要搜索的字符串。beg--这是开始索引,默认情况下是0。end--这是结束索引,默认情况下它等于该字符串的长度。返回值方法返回索引,如果找到这个st
系统 2019-09-27 17:38:06 2206