当前位置: 首页 > news >正文

政务网站建设及安全河南那家做网站实力强

政务网站建设及安全,河南那家做网站实力强,济南正规做网站公司,广州开发区官网同时向讯飞星火、文心一言和通义千问三个国产AI模型提个相同的问题#xff1a; “python 写一个贪吃蛇的游戏代码” 看哪一家AI写的程序直接能用#xff0c;谁就胜出#xff01; 讯飞星火 讯飞星火给出的代码#xff1a; import pygame import sys import random# 初… 同时向讯飞星火、文心一言和通义千问三个国产AI模型提个相同的问题 “python 写一个贪吃蛇的游戏代码” 看哪一家AI写的程序直接能用谁就胜出 讯飞星火  讯飞星火给出的代码 import pygame import sys import random# 初始化pygame pygame.init()# 设置屏幕大小 screen_size (640, 480) screen pygame.display.set_mode(screen_size)# 设置游戏标题 pygame.display.set_caption(贪吃蛇)# 定义颜色 WHITE (255, 255, 255) GREEN (0, 255, 0) RED (255, 0, 0)# 蛇的初始位置 snake_pos [[100, 100], [80, 100], [60, 100]]# 食物的初始位置 food_pos [300, 300]# 蛇的初始速度 snake_speed [20, 0]# 主循环 while True:# 处理游戏事件for event in pygame.event.get():if event.type pygame.QUIT:pygame.quit()sys.exit()elif event.type pygame.KEYDOWN:if event.key pygame.K_UP:snake_speed [0, -20]elif event.key pygame.K_DOWN:snake_speed [0, 20]elif event.key pygame.K_LEFT:snake_speed [-20, 0]elif event.key pygame.K_RIGHT:snake_speed [20, 0]# 更新蛇的位置snake_pos.insert(0, [snake_pos[0][0] snake_speed[0], snake_pos[0][1] snake_speed[1]])# 检查蛇头是否碰到食物if snake_pos[0] food_pos:food_pos [random.randrange(1, screen_size[0] // 20) * 20, random.randrange(1, screen_size[1] // 20) * 20]else:snake_pos.pop()# 检查蛇头是否碰到墙壁或者蛇身if snake_pos[0][0] 0 or snake_pos[0][0] screen_size[0] or snake_pos[0][1] 0 or snake_pos[0][1] screen_size[1] or snake_pos[0] in snake_pos[1:]:pygame.quit()sys.exit()# 绘制游戏界面screen.fill(WHITE)for pos in snake_pos:pygame.draw.rect(screen, GREEN, pygame.Rect(pos[0], pos[1], 20, 20))pygame.draw.rect(screen, RED, pygame.Rect(food_pos[0], food_pos[1], 20, 20))pygame.display.flip()# 控制游戏速度pygame.time.Clock().tick(10) 按F5执行运行结果如下 文心一言 文心一言给出的代码 import pygame   import random      # 初始化pygame   pygame.init()      # 定义颜色   WHITE (255, 255, 255)      # 定义屏幕大小   SCREEN_WIDTH 400   SCREEN_HEIGHT 400      # 创建屏幕   screen pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))      # 设置标题   pygame.display.set_caption(Snake Game)      # 创建时钟对象用于控制游戏速度   clock pygame.time.Clock()      # 创建蛇和食物的初始位置和大小   snake_parts [[100, 50], [90, 50], [80, 50]]   snake_head [70, 50]   food_x random.randint(1, 19) * 20   food_y random.randint(1, 19) * 20   snake_size 20   food_size 20      # 定义蛇和食物的运动方向和速度   snake_dir [2, 0]   snake_speed 10   food_speed 5      # 定义游戏状态进行中或结束   game_active True      # 游戏循环   while game_active:       # 处理事件       for event in pygame.event.get():           if event.type pygame.QUIT:               game_active False           elif event.type pygame.KEYDOWN:               if event.key pygame.K_UP and snake_dir ! [2, 0]: snake_dir [0, -1]               elif event.key pygame.K_DOWN and snake_dir ! [2, 0]: snake_dir [0, 1]               elif event.key pygame.K_LEFT and snake_dir ! [1, 0]: snake_dir [-1, 0]               elif event.key pygame.K_RIGHT and snake_dir ! [3, 0]: snake_dir [1, 0]          # 移动蛇头如果碰到食物则加长蛇身并重新生成食物位置       snake_head[0] snake_dir[0] * snake_speed       snake_head[1] snake_dir[1] * snake_speed       if snake_head[0] food_x and snake_head[1] food_y:           food_x random.randint(1, 19) * 20           food_y random.randint(1, 19) * 20           snake_parts.insert(0, list(snake_head))       else:           snake_parts.pop()       # 如果蛇头超出屏幕边界则游戏结束       if snake_head[0] 0 or snake_head[0] SCREEN_WIDTH or snake_head[1] 0 or snake_head[1] SCREEN_HEIGHT:           game_active False       # 如果蛇头撞到自己的身体则游戏结束       for part in snake_parts:           if part list(snake_head): continue           if part[0] snake_head[0] and part[1] snake_head[1]:               game_active False               break       # 将蛇身和食物绘制到屏幕上刷新屏幕显示结果       screen.fill(WHITE)       for part in snake_parts:           pygame.draw.rect(screen, WHITE, pygame.Rect(part[0], part[1], snake_size, snake_size))       pygame.draw.rect(screen, WHITE, pygame.Rect(food_x, food_y, food_size, food_size))       pygame.display.flip()       # 控制游戏速度避免程序运行过快导致游戏体验不佳同时保证游戏运行流畅度避免卡顿现象发生。       clock.tick(60)  # 每秒60帧即每秒游戏画面更新60次。 按F5执行报以下错误 pygame 2.5.0 (SDL 2.28.0, Python 3.11.0) Hello from the pygame community. https://www.pygame.org/contribute.html Traceback (most recent call last):   File E:\.py\snake.py, line 59, in module     snake_parts.pop() IndexError: pop from empty list 通义千问 通义千问给出的代码 python import pygame import sys import random # 初始化 Pygame pygame.init() # 设置屏幕大小和标题 screen pygame.display.set_mode((400, 400)) pygame.display.set_caption(Snaky) # 设置游戏速度 clock pygame.time.Clock() # 蛇体、食物的大小 cell_size 10 # 蛇的初始位置、方向和长度 snake_x 200 snake_y 200 snake_direction right snake_length 3 # 食物的初始位置 food_x random.randint(0, 380 - cell_size) food_y random.randint(0, 380 - cell_size) # 蛇移动的方向向量 right (1, 0) left (-1, 0) up (0, -1) down (0, 1) # 游戏是否结束 game_over False # 游戏主循环 while not game_over:     # 处理事件     for event in pygame.event.get():         if event.type pygame.QUIT:             game_over True         elif event.type pygame.KEYDOWN:             if event.key pygame.K_UP and snake_direction ! down:                 snake_direction up             elif event.key pygame.K_DOWN and snake_direction ! up:                 snake_direction down             elif event.key pygame.K_LEFT and snake_direction ! right:                 snake_direction left             elif event.key pygame.K_RIGHT and snake_direction ! left:                 snake_direction right # 更新蛇的位置     if snake_direction right:         snake_x cell_size     elif snake_direction left:         snake_x - cell_size     elif snake_direction up:         snake_y - cell_size     elif snake_direction down:         snake_y cell_size          # 检查蛇是否碰到墙壁或自己的身体     if snake_x 0 or snake_x 400 - cell_size or snake_y 0 or snake_y 400 - cell_size:         game_over True     for i in range(snake_length - 1, -1, -1):         if snake_x snake_body[i][0] and snake_y snake_body[i][1]:             game_over True # 检查蛇是否吃到食物     if snake_x food_x and snake_y food_y:         food_x random.randint(0, 380 - cell_size)         food_y random.randint(0, 380 - cell_size)         snake_length 1         snake_body.append((snake_x, snake_y)) # 绘制蛇和食物     screen.fill((0, 0, 0))     for i in range(snake_length):         pygame.draw.rect(screen, (255, 255, 255), (snake_body[i][0], snake_body[i][1], cell_size, cell_size))     pygame.draw.rect(screen, (0, 255, 0), (food_x, food_y, cell_size, cell_size)) # 更新屏幕     pygame.display.flip()     clock.tick(10) # 退出 Pygame pygame.quit() sys.exit() 按F5执行报以下错误 pygame 2.5.0 (SDL 2.28.0, Python 3.11.0) Hello from the pygame community. https://www.pygame.org/contribute.html Traceback (most recent call last):   File E:\.py\snake.py, line 67, in module     if snake_x snake_body[i][0] and snake_y snake_body[i][1]: NameError: name snake_body is not defined. Did you mean: snake_y? 讯飞星火胜出 只有讯飞星火未做任何修改代码直接拿来就能运行胜出 但只说明仅此一个问题的胜出并非就说讯飞整体就比其它两家强哦 代码改进 简单做了2个小的优化改进 1. 代码细分为多个函数 init() repaint() quit_game() ...... 2. 游戏界面增加了方格线使用pygame.draw.lines()快速布点是关键 # 定义线段端点坐标时根据规律分别写x,y坐标的数据列表     x,y (-1,640,640,-1)*16, []     for i in range(36):         for _ in range(2):             y.append(19i*20)     # zip()整合x,y为坐标Pair     points list(zip(x,y)) 完成代码 import pygame import sys import random# 定义颜色 WHITE (255, 255, 255) GREEN (0, 255, 0) RED (255, 0, 0) GREY (211, 211, 211) # 淡灰色def init():global screen, screen_sizeglobal snake_pos, food_pos, snake_speed# 初始化pygamepygame.init()# 设置屏幕大小screen_size (640, 480)screen pygame.display.set_mode(screen_size)# 设置游戏标题pygame.display.set_caption(贪吃蛇)# 蛇的初始位置snake_pos [[100, 100], [80, 100], [60, 100]]# 食物的初始位置food_pos [300, 300]# 蛇的初始速度snake_speed [20, 0]def repaint():# 绘制游戏界面screen.fill(WHITE)# 定义线段的端点坐标x,y (-1,640,640,-1)*16, []for i in range(36):for _ in range(2):y.append(19i*20)# 使用pygame.draw.lines()函数绘制线段points list(zip(x,y))pygame.draw.lines(screen, GREY, False, points, 1) # 线宽为1points list(zip(y,x))pygame.draw.lines(screen, GREY, False, points, 1) # 重画蛇和食物for pos in snake_pos:pygame.draw.rect(screen, GREEN, pygame.Rect(pos[0], pos[1], 20, 20))pygame.draw.rect(screen, RED, pygame.Rect(food_pos[0], food_pos[1], 20, 20))pygame.display.flip()def game_quit():pygame.quit()sys.exit()def main():global screen, screen_sizeglobal snake_pos, food_pos, snake_speed# 主循环while True:# 处理游戏事件for event in pygame.event.get():if event.type pygame.QUIT:game_quit()elif event.type pygame.KEYDOWN:if event.key pygame.K_UP:snake_speed [0, -20]elif event.key pygame.K_DOWN:snake_speed [0, 20]elif event.key pygame.K_LEFT:snake_speed [-20, 0]elif event.key pygame.K_RIGHT:snake_speed [20, 0]# 更新蛇的位置snake_pos.insert(0, [snake_pos[0][0] snake_speed[0], snake_pos[0][1] snake_speed[1]])# 检查蛇头是否碰到食物if snake_pos[0] food_pos:food_pos [random.randrange(1, screen_size[0] // 20) * 20, random.randrange(1, screen_size[1] // 20) * 20]else:snake_pos.pop()# 检查蛇头是否碰到墙壁或者蛇身if snake_pos[0][0] 0 or snake_pos[0][0] screen_size[0] or snake_pos[0][1] 0 or snake_pos[0][1] screen_size[1] or snake_pos[0] in snake_pos[1:]:game_quit()此处可增加与用户的交互如if askyesno(title,again?):init() # Yes to Play againelse:game_quit() # No to Exit# 重画界面及蛇和食物repaint()# 控制游戏速度pygame.time.Clock().tick(10)if __name__ __main__:init()main() 更多改进思路 增加游戏的生命值比如初始有3条蛇死完后提示用户“重来”还是“退出游戏” 增加游戏的得分比如每吃到一个食物得分增加10分结束时写入排行榜 增加游戏背景音乐和声效提高游戏可玩性…… 擅长pygame编程的你请继续
http://www.dnsts.com.cn/news/4825.html

相关文章:

  • 网站开发源代码修改济南哪个网络公司建网站好
  • 国外网站做任务套利辽宁城乡建设工程招标网
  • 站长网站建设网站空间和域名区别
  • wordpress站群主机品牌整合营销机构
  • 网站业务功能设计做网站前台要学什么课程
  • flash 网站欣赏wordpress分类目录模板
  • 推荐电商网站建设拼多多网店怎么开
  • 做网站的公司找客户唯美网站建设
  • muse做的网站怎么样asp网站仿制
  • 如何注册公司网站免费注册婚纱网站手机网站
  • 望京做网站wordpress+国内不使用
  • 教育门户网站建设用户中心wordpress
  • 东山网站建设godaddy做网站
  • 我的三次做网站的经历生成关键词的软件
  • 太原网站建设山西悉云科技智能建站系统免费版
  • 建立网站怎么赚钱wordpress 允许函数
  • 百度营销-网站分析培训阿里网站备案寄材料
  • 岗巴网站建设网站推广初期目标
  • 全国最好网站建设网站空间上传工具
  • 有网站用nodejs做后台佛山网上推广
  • wordpress全站开启ssl网络营销渠道的组成要素包括
  • 宣传类的网站有哪些做二手房的网站技巧
  • 有哪些做网站的网站wordpress get_user_meta
  • 网站建设实训报告doc线上推广引流是做网站吗
  • 用手机建立网站聊城做网站的公司价位
  • 电子商务网站建设与维护的主要内容吉林省住房城乡建设厅网站
  • 网站建设提成福建住房和建设网站密码忘记
  • 泰兴网站建设吧对外网站建设情况汇报
  • 推广网站免费上海企业营销策划
  • 如何创建网站?怎么做彩票平台网站吗