亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

精靈的照片沒有導入,這個錯誤讓我很困惑

精靈的照片沒有導入,這個錯誤讓我很困惑

catspeake 2023-03-01 15:52:49
所以,我無法識別錯誤是什么以及如何解決它。這是我的代碼:import pygamepygame.init()win = pygame.display.set_mode((500,480))pygame.display.set_caption("First Game")walkRight = [pygame.image.load('R1.png'), pygame.image.load('R2.png'), pygame.image.load('R3.png'), pygame.image.load('R4.png'), pygame.image.load('R5.png'), pygame.image.load('R6.png'), pygame.image.load('R7.png'), pygame.image.load('R8.png'), pygame.image.load('R9.png')]walkLeft = [pygame.image.load('L1.png'), pygame.image.load('L2.png'), pygame.image.load('L3.png'), pygame.image.load('L4.png'), pygame.image.load('L5.png'), pygame.image.load('L6.png'), pygame.image.load('L7.png'), pygame.image.load('L8.png'), pygame.image.load('L9.png')]bg = pygame.image.load('bg.jpg')char = pygame.image.load('standing.png')x = 50y = 400width = 40height = 60vel = 5clock = pygame.time.Clock()isJump = FalsejumpCount = 10left = Falseright = FalsewalkCount = 0def redrawGameWindow():    global walkCount        win.blit(bg, (0,0))      if walkCount + 1 >= 27:        walkCount = 0            if left:          win.blit(walkLeft[walkCount//3], (x,y))        walkCount += 1                              elif right:        win.blit(walkRight[walkCount//3], (x,y))        walkCount += 1    else:        win.blit(char, (x, y))        walkCount = 0            pygame.display.update()     run = Truewhile run:    clock.tick(27)    for event in pygame.event.get():        if event.type == pygame.QUIT:            run = False    keys = pygame.key.get_pressed()        if keys[pygame.K_LEFT] and x > vel:         x -= vel        left = True        right = False    elif keys[pygame.K_RIGHT] and x < 500 - vel - width:          x += vel        left = False        right = True        此代碼應該導入多個圖像。角色也應該移動,但移動很好。問題在于導入圖像。背景也有同樣的問題。壓痕也很好。我不知道如何解決這個錯誤。錯誤如下:我檢查了文件名稱是否有問題,但我找不到其中的錯誤!請在這件事上給予我幫助。
查看完整描述

2 回答

?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

據我了解,您的游戲在桌面上的er.py文件夾內運行GROOT!。為了讓程序訪問圖像,它需要知道它們在哪里。一種方便的方法(而不是指定長路徑)是將運行程序的位置(我假設是文件夾GROOT!。因此,無需修改代碼,您需要做的就是將所有圖像復制到文件夾中GROOT!,所以只要你在同一個文件夾中運行程序(也就是說,你執行python er.py,這意味著GROOT!將是你的工作目錄)。更有組織的方法是resources在里面創建一個文件夾,比如。GROOT!然后,而不是寫pygame.image.load('R1.png'),你會寫pygame.image.load('resources\\R1.png')(假設是 Windows 平臺)。



查看完整回答
反對 回復 2023-03-01
?
交互式愛情

TA貢獻1712條經驗 獲得超3個贊

我建議更改應用程序的工作目錄。如果文件位于與 python 文件相同的目錄中,則獲取文件的目錄并設置工作目錄:


import os


sourceFileDir = os.path.dirname(os.path.abspath(__file__))

os.chdir(sourceFileDir)

如果圖像包含在子目錄中(例如iamges),則加入文件路徑和目錄路徑:


import os


sourceFileDir = os.path.dirname(os.path.abspath(__file__))

imagePath = os.path.join(sourceFileDir, "images") 

os.chdir(imagePath)


查看完整回答
反對 回復 2023-03-01
  • 2 回答
  • 0 關注
  • 177 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號