当我尝试移动 Pygame 时,玩家回到初始位置

2024-04-24

当我移动玩家时,当我按住右箭头时,他会移动 10 个像素,当我释放按键时,他会返回到初始位置。 顺便说一句,你不需要告诉我当我按右时他会向左移动,我知道:)

这是代码:

import pygame



pygame.init()

WIDTH = 1000
HEIGHT = 1000
screen = pygame.display.set_mode([WIDTH,HEIGHT])
clock = pygame.time.Clock()

WHITE = (255,255,255)
def ecranAlb():
    screen.fill(WHITE)

def player():
    playerImg = pygame.image.load('jucator.png')
    WIDTHplayer = 150
    HEIGHTplayer = 130
    playerImg = pygame.transform.scale(playerImg,(WIDTHplayer,HEIGHTplayer))
    Xplayer = 500
    Yplayer = 500
    

    vel = 10

    keys = pygame.key.get_pressed()

    if keys[pygame.K_RIGHT]:
        Xplayer -= vel

    
    screen.blit(playerImg,(Xplayer,Yplayer))   

running = True

while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
    ecranAlb()
    player()
    pygame.display.flip()



pygame.quit()

玩家的位置在应用程序循环中连续设置player功能:

def player():
   # [...]

   Xplayer = 500
   Yplayer = 500

您必须在函数外部的应用程序循环之前初始化玩家位置。使用global陈述 https://docs.python.org/3/reference/simple_stmts.html?highlight=global#grammar-token-global-stmt更改函数内全局命名空间中的变量:

playerImg = pygame.image.load('jucator.png')
WIDTHplayer = 150
HEIGHTplayer = 130
playerImg = pygame.transform.scale(playerImg,(WIDTHplayer,HEIGHTplayer))
Xplayer = 500
Yplayer = 500
vel = 10

def player():
    global Xplayer, Yplayer  
    
    keys = pygame.key.get_pressed()
    if keys[pygame.K_RIGHT]:
        Xplayer -= vel
 
    screen.blit(playerImg,(Xplayer,Yplayer))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当我尝试移动 Pygame 时,玩家回到初始位置 的相关文章

  • 如何实现 __eq__ 进行集合包含测试?

    我遇到了一个问题 我将一个实例添加到一个集合中 然后进行测试以查看该对象是否存在于该集合中 我已经覆盖了 eq 但在包含测试期间不会调用它 我必须覆盖吗 hash 反而 如果是这样 我将如何实施 hash 鉴于我需要对元组 列表和字典进行哈
  • MANIFEST.in、package_data 和 data_files 澄清吗?

    我正在尝试创建一个 Python 包 并且目录结构如下 mypkg init py module1 x py y py z txt module2 a py b py 然后我将所有文件添加到MANIFEST in当我检查创建的存档时 它包含
  • pandas Wide_to_long 后缀参数

    我对在 pandas 中使用 Wide to long 时的参数有疑问 有一个参数叫suffix我不明白 在文档中它说 后缀 str 默认 d 捕获所需后缀的正则表达式 d 捕获数字后缀 没有数字的后缀可以用否定字符类 D 指定 您还可以进
  • Pandas 连接问题:列重叠但未指定后缀

    我有以下数据框 print df a mukey DI PI 0 100000 35 14 1 1000005 44 14 2 1000006 44 14 3 1000007 43 13 4 1000008 43 13 print df b
  • Tipfy:如何在模板中显示blob?

    鉴于在 gae 上使用tipfy http www tipfy org python 以下模型 greeting avatar db Blob avatar 显示 blob 此处为图像 的模板标签是什么 在这种情况下 斑点是一个图像 这很棒
  • 使用 pandas 将字符串对象转换为 int/float

    import pandas as pd path1 home supertramp Desktop 100 life 180 data csv mydf pd read csv path1 numcigar Never 0 1 5 Ciga
  • 在Python中以交互方式执行多行语句

    我是 Python 世界的新手 这是我用 Python 编写的第一个程序 我来自 R 世界 所以这对我来说有点不直观 当我执行时 In 15 import math import random random random math sqrt
  • Python——捕获异常的效率[重复]

    这个问题在这里已经有答案了 可能的重复 Python 常见问题解答 异常有多快 https stackoverflow com questions 8107695 python faq how fast are exceptions 我记得
  • 在 iPython/pandas 中绘制多条线会生成多个图

    我试图了解 matplotlib 的状态机模型 但在尝试在单个图上绘制多条线时遇到错误 据我了解 以下代码应该生成包含两行的单个图 import pandas as pd import pandas io data as web aapl
  • Python 3在for循环中更改字典键的值不起作用

    我的 python 3 代码没有按预期工作 def addFunc x y print x y def subABC x y z print x y z def doublePower base exp print 2 base exp d
  • Pandas groupby apply 执行缓慢

    我正在开发一个涉及大量数据的程序 我正在使用 python pandas 模块来查找数据中的错误 这通常工作得非常快 然而 我当前编写的这段代码似乎比应有的速度慢得多 我正在寻找一种方法来加快速度 为了让你们正确测试它 我上传了一段相当大的
  • PyArmor - 打包为一个可执行文件

    当我执行此命令时 您好 使用 PyArmor pyarmor pack main py 它将它打包到一个名为的文件夹中dist里面包含我的 exe 以及许多 Python 扩展文件 据我所知 PyArmor 使用 PyInstaller 来
  • 在seaborn中对箱线图x轴进行排序

    我的数据框round data看起来像这样 error username task path 0 0 02 n49vq14uhvy93i5uw33tf7s1ei07vngozrzlsr6q6cnh8w 39 png 1 0 10 n49vq
  • Selenium 不会在新选项卡中打开新 URL(Python 和 Chrome)

    我想使用 Selenium WebDriver 和 Python 在不同的选项卡中打开相当多的 URL 我不确定出了什么问题 driver webdriver Chrome driver get url1 time sleep 5 driv
  • 更换壳牌管道[重复]

    这个问题在这里已经有答案了 在 subprocess 模块的 Python 2 7 文档中 我找到了以下片段 p1 Popen dmesg stdout PIPE p2 Popen grep hda stdin p1 stdout stdo
  • 在Python中连续解析文件

    我正在编写一个脚本 该脚本使用 HTTP 流量行解析文件 并取出域 目前仅将它们打印到屏幕上 我正在使用 httpry 将流量连续写入文件 这是我用来删除域名的脚本 usr bin python import re input open r
  • 在 HDF5 (PyTables) 中存储 numpy 稀疏矩阵

    我在使用 PyTables 存储 numpy csr matrix 时遇到问题 我收到此错误 TypeError objects of type csr matrix are not supported in this context so
  • Pip 无法在 Windows 上安装 Twisted

    我正在尝试在 Windows 8 计算机上安装 Twisted 在 Twisted 官方网站上 只有一个 Windows 版的 Wheel 文件 https twistedmatrix com trac wiki Downloads htt
  • 如何在Tensorflow中保存估计器以供以后使用?

    我按照教程 TF Layers 指南 构建卷积神经网络 以下是代码 https github com tensorflow tensorflow blob r1 1 tensorflow examples tutorials layers
  • 如何使用 Python 3 正确显示倒计时日期

    我正在尝试获取将显示的倒计时 基本上就像一个世界末日时钟哈哈 有人可以帮忙吗 import os import sys import time import datetime def timer endTime datetime datet

随机推荐

  • 在反序列化之前根据标头过滤消息

    有时 可以在反序列化之前根据标头值过滤掉消息 使用 spring kafka 是否有针对此场景的任何现有模式 我正在考虑实现类似于 ErrorHandlingDeserializer 除了委托之外还将过滤谓词作为属性 有什么建议么 谢谢 是
  • MVC 5 中的存储过程不返回值

    我正在通过数据库方法使用实体框架 MVC5 进行工作 我使用Mysql作为数据库 我创建一个程序 当通话流程在Mysql中它按照我的预期工作 但是当我在 MVC 中使用过程时 它每次都会返回 0 储存程序 CREATE PROCEDURE
  • .playground 是 swift 文件吗?谁能“看到”它?

    我试图弄清楚 playground 文件到底是什么 如果它是源文件 则项目中的其他 swift 文件或其他 playground 文件都无法 据我尝试 看到它 反之亦然 一个项目应该有一个这样的文件吗 它们是一种 swift 文件吗 我知道
  • Boost 库构建 - 运行时链接和链接选项之间的区别

    我正在尝试使用 MSVC VS 2010 在 Windows 7 中构建 boost 库 我遇到过这些选择运行时链接和链接在 bjam 命令行选项中 我想知道它们是如何使用的以及它们之间的确切区别是什么 我已经使用此命令行构建了 Boost
  • 使用 Google Breakpad 的小型转储无法显示应用程序崩溃的行号

    我在崩溃时获得了应用程序的小型转储文件 但它没有给我诸如函数名称和行号之类的详细信息 输出如下 Operating system Linux 0 0 0 Linux 3 3 8 2 2 1 SMP Thu May 12 13 30 26 U
  • 如何实现 hamcrest 匹配器

    我想运行这行代码 assertThat contextPin get equalTo pinPage getPinObjFromUi 但我想打印到日志中以提供信息 这意味着我可以知道哪些字段不相等 所以我想到了实现一个匹配器 我用谷歌搜索过
  • 如何更改默认的 javadoc 样式表?

    是否有命令行选项来更改 javadoc 创建的样式表文件 我想使用我自己的 css 文件 默认的蓝色很无聊 我尝试了 stylesheet 选项 但不支持它 是的 这是可能的 而且实际上非常简单 例如 如果您查看 Mockito 的 jav
  • Markdown 所见即所得编辑器和预览在同一文本区域中[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我寻找一个编辑器来编写 Markdown 语法并在同一文本区域中预览 例如引导所见即所得HTML5 ht
  • Django Crispy-forms - 自定义按钮

    我的 django crispy form 中有两个按钮 self helper add input Submit submit Submit self helper add input Button cancel Cancel 提交按钮工
  • !r 在 str() 和 repr() 中做什么?

    根据Python 2 7 12 文档 https docs python org 2 tutorial inputoutput html fancier output formatting s apply str and r apply r
  • 预加载背景图像

    我正在构建一个循环显示 3 个不同背景的页面 每 750 毫秒更改一次 为此 我在主体中添加了一个带有相关背景图像的类 并使用 JS 进行了更改 对于第一次循环 它们会闪烁 因为图像必须加载 所以它不会立即出现 因此 我可以使用任何方法来预
  • 使用#selector 传递参数

    我是 Swift 的初学者 我正在尝试通过通知中心启动一个功能 ViewController swift 中的观察者调用函数reload override func viewDidLoad super viewDidLoad Notific
  • 使用 Gson 反序列化 JSON 时引用父对象

    给定以下 JSON authors name Stephen King books title Carrie title The Shining title Christine title Pet Sematary 这个对象结构 publi
  • Tymon\JWTAuth::toUser 错误:需要令牌

    我有一个 Larvel API 它使用 Tymon JWTAuth 来验证用户身份 它运行良好 由于某些原因 我还有一条不受保护的路线web php Route get myroute MyController mymethod MyCon
  • 如何在flutter中解析没有key的JSON

    我想解析一个 JSON 但这个 JSON 没有键值 仅仅是价值 我尝试创建课程但不起作用 错误是类型 List 不是类型 Map 的子类型 我尝试解析它们在 json 中占据的位置 例如 json 0 但我对此不确定 提前致谢 Json P
  • 定义具有多种消息类型的消息传递域

    到目前为止 我见过的大多数 F 消息传递示例都使用 2 4 种消息类型 并且能够利用模式匹配将每条消息定向到其正确的处理函数 对于我的应用程序 由于处理和所需参数的不同性质 我需要数百种独特的消息类型 到目前为止 每个消息类型都是其自己的记
  • 单击“保存”按钮后的 WPF 数据绑定

    我有一个应用程序和一个设置窗口 其中 TabControl 包含几个 TabItems 它们每个都有一些字段 文本框 这些字段数据绑定到同一个 Singleton 对象 仅在单击 保存 按钮后 是否有任何优雅且类似 WPF 的数据绑定方式
  • iOS 7 - 呈现模式视图控制器时收到警告消息

    使用 iOS 7 编译和运行 在呈现模式视图控制器时 我收到警告消息 不鼓励在分离视图控制器上呈现视图控制器 我在使用 iOS 6 或更早版本时从未遇到过问题 任何人都可以显示在呈现模式视图控制器时是否有任何更改吗 SearchViewCo
  • 如何向打开 Chrome 控制台的用户显示警告,就像 Facebook 和 Blockchain 那样?

    当我在 Facebook 和 Blockchain 等网站上打开控制台时 我收到如下警告 我想知道如何在我的网站上执行此操作 显示警告 告诉用户这很危险 他不应该在那里粘贴任何内容 您可以设置 console log 消息的样式 conso
  • 当我尝试移动 Pygame 时,玩家回到初始位置

    当我移动玩家时 当我按住右箭头时 他会移动 10 个像素 当我释放按键时 他会返回到初始位置 顺便说一句 你不需要告诉我当我按右时他会向左移动 我知道 这是代码 import pygame pygame init WIDTH 1000 HE