2014-03-06 60 views
0

我有很多圖像需要加載到Pygame程序中。我是否可以從一個單獨的腳本加載所有這些,我將它們作爲一個模塊加載到我的主程序中並在主程序中使用?任何幫助非常感謝。提前致謝。將pygame圖像作爲模塊加載

回答

2

這將是更好,如果你只是有一個有意義的名字的文件。

然後,您可以將圖像加載到字典中,並將文件名作爲關鍵字。

一個例子使用:

from os import listdir 
from os.path import isfile, join 

IMAGE_PATH = "/images" 
images_dict = dict() 

images = [ f for f in listdir(IMAGE_PATH) if isfile(join(IMAGE_PATH,f)) and f.endswith('png') ] 

for filename in images: 
    images_dict[os.path.splitext(filename)[0]] = pygame.image.load(join(IMAGE_PATH,filename)) 

,那麼你可以在下面的方式使用圖片:

image = images_dict['fox'] 
+0

感謝您的回覆! :) –

1

我通常做的事情是,在主文件所在的同一目錄中有一個名爲constants.py或images.py的獨立文件。在images.py例如我加載這樣的圖像 X = pygame.image.load(「image_path.extension」)

然後我唯一要做的就是從主文件導入圖像文件和X圖像可以在主文件中直接訪問:)希望有幫助!

(編輯)我做的正是你說的,即加載這樣的圖像在load_images.py文件,然後從主程序我喜歡導入該文件:

from load_images.py import * 

話又說回來從主文件我可以訪問一樣,所有的圖像:

image1 = pic1 
image2 = pic2 
..... 

+0

嗨!感謝您的迴應。這是我的理解。 –

+0

隨時伴侶:) –

+0

第一個程序的圖像加載如下 pic1 = pygame.image.load(「data/img/qsu.png」)。convert_alpha() pic2 = pygame.image.load(「data /圖片3 = pygame.image.load(「data/img/qsuL3.png」)。convert_alpha() pic4 = pygame.image.load(「data/img/qsd。」) png「)。convert_alpha() pic5 = pygame.image.load(」data/img/qsdL2.png「)。convert_alpha() pic6 = pygame.image.load(」data/img/qsdL3.png「)。 convert_alpha() 現在我從我的主程序保存爲load_images.pythen文件我從load_images下面寫如下 import pic1,pic2,pic3,pic4,pic5,pic6 new_i mage1 = pic1等 那樣? –

0

考慮以上是我簡單地做兩個答案後,寫一個腳本,我加載的所有圖片並創建一個名爲image_dict的字典,圖像名稱作爲鍵,並將程序保存爲「load_images.py」 然後從第二個程序中,我做了一個「from load_images.py import image_dict」。 現在鑰匙給了我圖像。

謝謝。