资源简介
Python实现动物识别产生式系统,适合初学机器学习者,有应该更正的地方,欢迎指正
代码片段和文件信息
# -*- coding: utf-8 -*-
“““
Created on Sun Dec 24 15:13:13 2017
@author: user
“““
import numpy as np
class productionSystem:
def __init__(self):
f=open(“productions.txt““r“)
self.productions=[]
self.charicters=[]
self.myclass=(f.readline().strip(“最终类别为:“).strip()).split(“,“)
for line in f.readlines():
if(line!=‘\n‘):
line=line.replace(“->““ “)
line=line.replace(“““ “)
line=line.split()
self.productions.append(line)
for ch in line:
if (ch not in self.myclass) and (ch not in self.charicters):
self.charicters.append(ch)
def showProduction(self):
print()
def match(selfx):
for ch in self.productions[x][:-1]:
if(ch in self.work):
continue
else:
return False
return True
def classify(selfwork):
used=np.zeros(len(self.productions))
counter=len(self.work)
while(True):
for i in range(len(self.productions)):
if(used[i]==0 and self.match(i)):
used[i]=1
self.work.append(self.productions[i][-1])
if(self.work[-1] in self.myclass):
return True
tmp=len(self.work)
if(tmp==counter):
return False
else:
counter=tmp
def dowork(self):
print(“所有类别有:“)
for t in self.myclass:
print(‘{:<10}‘.format(t)end=““)
print()
print(“所有属性有:“)
counter=0
for t in self.charicters:
counter+=1
if(counter%5==0):
print(‘{:<10}‘.format(t))
else:
print(‘{:<10}‘.format(t)end=‘‘)
self.work=input(“\n请输入属性\n----属性之间用空格隔开----\n“)
self.work=self.work.split()
if(self.classify(self.work)):
print(“该物种为:“+self.work[-1])
else:
print(“抱歉,未能识别出该物种\n“)
def main():
p=productionSystem()
p.dowork()
if __name__==“__main__“:
main()
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 429 2017-12-24 16:24 ProductionSystem\productions.txt
文件 2346 2017-12-24 19:35 ProductionSystem\production_system.py
文件 2225 2017-12-24 18:56 ProductionSystem\__pycache__\production_system.cpython-36.pyc
目录 0 2017-12-24 18:56 ProductionSystem\__pycache__
目录 0 2017-12-24 17:15 ProductionSystem
----------- --------- ---------- ----- ----
5000 5
相关资源
- py2exe for 2.764位
- testbrowse.py
- python实现的k-means算法
- 问卷星爬虫带验证码
- python LDA学习
- 随机森林的代码实现和相应的数据集
-
Python sc
ripts For ABAQUS: Learn By Example - 小甲鱼零基础入门学习Python视频教程
- 基于tensorflow的二分类的python实现注释
- 《PyTorch生成对抗网络编程》思维导图
- 基于Python实现LFM种子传播算法
- 密码学重合指数计算python实现
- python新手算法函数思想入门项目,包
- 已知空间坐标和对应的属性,利用p
- 小甲鱼pythons视频+课件+源代码(96天)
- 找出最长的句子最长的单词
- 如何封装一个带传参的python程序成可
- 疯狂的python学习笔记
- wxPython写的类似qq截图的小程序
- Python3.6.4+Django2.0.2 单表的增删改查和
- python三边定位模块
- Python帮助手册CHM版
- MIC数据关联性挖掘算法Python源码
- 船舶AIS数据轨迹可视化python代码.rar
- python mysql 简单银行存取款转账系统
- 麦子学院Python全套视频.txt
- python多线程批量端口扫描
- [麻省理工-计算机科学及编程导论][
- python视频教程 老男孩全栈工程师教程
- 读取ros包中rgb和depth图,python代码
评论
共有 条评论