资源简介
最新东北大学Python程序设计实验代码(含报告,不含综合作业),项目包括:井字棋、人口数据特征间的关系、 P2P网络贷款数据、插补用户用电量数据缺失值、wine和wine_quality 数据集分类及回归分析。仅供学习交流和参考
综合作业链接:https://blog.csdn.net/momentni/article/details/109262120
代码片段和文件信息
import tkinter as tk
import random
# 胜利的走法
win_chess = [[0 4 8] [2 4 6] [0 1 2] [3 4 5] [6 7 8] [0 3 6] [1 4 7] [2 5 8]]
# 最佳下棋顺序
best_way = [4 0 2 6 8 1 3 5 7]
# 棋盘
chess = [0 0 0 0 0 0 0 0 0]
the_chess = [0 0 0 0 0 0 0 0 0] # 记录棋盘
show_chess = ‘‘
flag = True
who = 1
count_x = 0
count_y = 0
count_z = 0
top = tk.Tk()
top.title(‘人机井字棋‘)
top.geometry(“300x300“)
top.resizable()
show_str = tk.StringVar(top)
tips = tk.StringVar(top) # 提示信息
def init_ch():
# 初始化棋盘
for j in range(9):
the_chess[j] = 0
update_chess()
return the_chess
def update_chess():
# 更新棋盘
for k in range(9):
if the_chess[k] == 1:
ch[k].set(‘[X]‘)
elif the_chess[k] == -1:
ch[k].set(‘[O]‘)
else:
ch[k].set(‘[ ]‘)
def ai_go_first():
if count_zero(the_chess) == 9:
the_chess[random.randint(0 8)] = -1
update_chess()
ai_go_fir_b.pack_forget()
def but1():
# 人机对战
init_ch()
tips.set(““)
l0.bind(““ touch_l0)
l1.bind(““ touch_l1)
l2.bind(““ touch_l2)
l3.bind(““ touch_l3)
l4.bind(““ touch_l4)
l5.bind(““ touch_l5)
l6.bind(““ touch_l6)
l7.bind(““ touch_l7)
l8.bind(““ touch_l8)
ai_go_fir_b.pack(side=tk.RIGHT)
def ai_go(w):
# 机器走棋
if count_zero(the_chess) < 9:
po = is_danger(the_chess 1)
if po != -1:
the_chess[po] = w
update_chess()
elif not constraint(w):
pass
else:
the_chess[get_next_o(the_chess -1)] = w
update_chess()
if is_win(the_chess -1) == -1:
tips.set(“你输了!“)
if count_zero(the_chess) == 0:
tips.set(“平局!“)
def constraint(w):
# 判断是否处于危险状态
po = is_danger(the_chess -1)
if po != -1:
the_chess[po] = w
update_chess()
return False
return True
def peo_go(po):
# 获取按键并下棋
if the_chess[po] == 0:
the_chess[po] = who
update_chess()
if is_win(the_chess who) == who:
tips.set(‘你赢了!‘)
elif count_zero(the_chess) == 0:
tips.set(“平局!“)
else:
ai_go(who * -1)
def is_win(now_chess who):
“““
判断游戏方(who)是否赢局
“““
temp = now_chess[:]
for chess in win_chess:
if (temp[chess[0]] == who) and (temp[chess[1]] == who) and (temp[chess[2]] == who):
return who
return 0
def count_zero(now_chess):
“““
统计剩余格子
“““
temp = now_chess[:]
count = 0
for te in temp:
if te == 0:
count = count + 1
return count
def evaluation(now_chess):
“““
估价函数(以X为对象)
可以赢的行数 +1
可以赢的行数上有自己的棋子 +2
可导致自己赢 +2
可导致对手赢 -2
“““
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2020-10-23 19:34 Python程序设计实验\
目录 0 2020-10-23 19:22 Python程序设计实验\1\
文件 8062 2019-12-05 18:42 Python程序设计实验\1\人机井字棋.py
目录 0 2020-10-23 19:22 Python程序设计实验\2.1\
文件 35345 2019-12-25 15:43 Python程序设计实验\2.1\1996-2015年各特征人口箱线图.png
文件 77656 2019-12-25 15:43 Python程序设计实验\2.1\1996~2015年人口数据特征间关系散点图和折线图.png
文件 44166 2019-12-25 15:43 Python程序设计实验\2.1\1996年和2015年各类人口直方图.png
文件 56466 2019-12-25 15:43 Python程序设计实验\2.1\1996年和2015年各类人口饼图.png
文件 4011 2019-12-25 15:43 Python程序设计实验\2.1\2.1代码.py
文件 2313 2018-03-20 22:37 Python程序设计实验\2.1\populations.npz
目录 0 2020-10-23 19:22 Python程序设计实验\2.2\
文件 3597 2019-12-25 16:21 Python程序设计实验\2.2\2.2代码.py
文件 18962271 2019-12-25 16:24 Python程序设计实验\2.2\Training_LogInfo.csv
文件 20322725 2016-03-02 19:10 Python程序设计实验\2.2\Training_Master.csv
文件 15323941 2016-02-23 18:35 Python程序设计实验\2.2\Training_Userupdate.csv
文件 9152 2018-03-21 14:25 Python程序设计实验\2.2\文件说明.xlsx
目录 0 2020-10-23 19:22 Python程序设计实验\2.3\
文件 3033 2019-12-26 16:18 Python程序设计实验\2.3\2.3代码.py
文件 809 2016-08-18 14:32 Python程序设计实验\2.3\alarm.csv
文件 1846 2018-03-21 13:45 Python程序设计实验\2.3\ele_loss.csv
文件 586 2019-12-26 16:31 Python程序设计实验\2.3\missLagrange.csv
文件 493 2019-12-22 20:34 Python程序设计实验\2.3\missing_data.csv
文件 3006 2019-12-22 21:25 Python程序设计实验\2.3\model.csv
目录 0 2020-10-23 19:22 Python程序设计实验\2.4\
文件 11634 2019-12-26 22:53 Python程序设计实验\2.4\2.4代码.py
文件 20012 2019-12-26 22:54 Python程序设计实验\2.4\ROC曲线.png
文件 10958 2018-03-20 21:05 Python程序设计实验\2.4\wine.csv
文件 84199 2018-03-20 20:56 Python程序设计实验\2.4\winequality.csv
文件 109420 2019-12-26 22:54 Python程序设计实验\2.4\梯度提升回归树模型预测结果.png
文件 106068 2019-12-26 22:54 Python程序设计实验\2.4\线性回归模型预测结果.png
文件 51712 2019-12-26 22:54 Python程序设计实验\2.4\轮廓系数折线图.png
............此处省略1个文件信息
相关资源
- python实现SGBM图像匹配算法
- python实现灰度直方图均衡化
- scrapy_qunar_one
- Python学习全系列教程永久可用
- python简明教程.chm
- 抽奖大转盘python的图形化界面
- 双边滤波器实验报告及代码python
- python +MYSQL+HTML实现21蛋糕网上商城
- Python-直播答题助手自动检测出题搜索
- OpenCV入门教程+OpenCV官方教程中文版
- Python 串口工具源码+.exe文件
- Python开发的全栈股票系统.zip
- Python操作Excel表格并将其中部分数据写
- python书籍 PDF
- 利用python绘制散点图
- python+labview+No1.vi
- 老男孩python项目实战
- python源码制作whl文件.rar
- python3.5可用的scipy
- PYTHON3 经典50案例.pptx
- 计算机科学导论-python.pdf
- python模拟鼠标点击屏幕
- windows鼠标自动点击py脚本
- 鱼c小甲鱼零基础学python全套课后题和
- Python 练习题100道
- Practical Programming 2nd Edition
- wxPython Application Development Cookbook
- python 3.6
- Python 3.5.2 中文文档 互联网唯一CHM版本
- python3.5.2.chm官方文档
评论
共有 条评论