Pygame改編飛機大戰(zhàn)制作兔子接月餅游戲
前言
左思右想沒有頭緒時,剛好看到一篇介紹Pygame制作飛機大戰(zhàn)的文章。文章寫的不錯,文中代碼拿來就能跑。有了!要不直接把飛機大戰(zhàn)改成接兔子接月餅游戲好了,既應(yīng)景又創(chuàng)新,原飛機改成兔子,敵人改成月餅就好了。
飛機大戰(zhàn)傳送門
說干就干,拿起手提飛快碼起,素材找起,很快就有成果了,哈哈!
代碼寫的急不怎么優(yōu)雅,但至少游戲是跑起來了。原來飛機大戰(zhàn)代碼沒有實現(xiàn)暫停、重開,得分計算和游戲菜單,這次魔改的都給補上了,有興趣的童鞋可以了解一下。
一、游戲效果展示
游戲效果如下,還可以吧~
游戲動圖
最后希望大家中秋快樂,人月兩團(tuán)圓~
游戲截圖
二、游戲文件邏輯架構(gòu)
每次看別人寫的文章都有很多收獲,這次學(xué)會了很多Python類的相關(guān)用法,收益匪淺。本游戲的文件架構(gòu)主要分為三個部分:
1)游戲主體,對應(yīng)的文件是lunar_war.py
2)游戲精靈,對應(yīng)的文件是lunar_sprites.py
3)游戲素材,對應(yīng)的是images目錄下的所有圖片、音樂等素材,部分素材來源網(wǎng)絡(luò)如有使用不當(dāng)?shù)恼埪?lián)系博主處理o(╥﹏╥)o。
代碼文件結(jié)構(gòu)
三、游戲主體代碼結(jié)構(gòu)
游戲主體代碼lunar_war.py負(fù)責(zé)控制游戲初始化、開始、結(jié)束、退出,偽代碼如下:
class PlaneGame(object): """兔子接月餅游戲""" def __init__(self): print("游戲初始化") pygame.init() # 1.創(chuàng)建游戲的窗口 self.screen = pygame.display.set_mode(SCREEN_RECT.size) # 2.創(chuàng)建游戲的時鐘 self.clock = pygame.time.Clock() # 3.調(diào)用私有方法,完成精靈和精靈組的創(chuàng)建 self.__create_sprites() # 4.設(shè)置定時器事件——每1秒創(chuàng)建一次月餅 pygame.time.set_timer(CREATE_MOONCAKE_EVENT, 1000) # 5.設(shè)置定時器事件——倒計時每1秒觸發(fā)一次 pygame.time.set_timer(CREATE_I_EVENT, 1000) # 6.設(shè)置定時器事件——10秒后結(jié)束游戲 pygame.time.set_timer(CREATE_OVER_EVENT, 10000) # 7.設(shè)置游戲狀態(tài),1代表開始,0代表結(jié)束,-1代表退出 self.game_state = 1 def __create_sprites(self): """創(chuàng)建背景精靈和精靈組""" def start_game(self): """游戲循環(huán)""" while True: if self.game_state == 1: """游戲進(jìn)行中""" # 1.設(shè)置刷新幀率 self.clock.tick(FRAME_PER_SEC) # 2.事件監(jiān)聽 self.__event_handler() # 3.碰撞檢測 self.__check_collide() # 4.更新/繪制精靈組 self.__update_sprites() # 5.更新顯示 pygame.display.update() elif self.game_state == 0: """游戲某一輪結(jié)束""" elif self.game_state == -1: """游戲退出""" def __event_handler(self): for event in pygame.event.get(): """事件響應(yīng)""" def __check_collide(self): """碰撞響應(yīng)""" def __update_sprites(self): """重繪精靈""" @staticmethod def __game_over(): print("游戲結(jié)束") pygame.quit() exit() if __name__ == "__main__": # 創(chuàng)建游戲?qū)ο? game = PlaneGame() # 啟動游戲 game.start_game()
學(xué)習(xí)過程中有幾個難點:
1)Pygame游戲事件定時器的創(chuàng)建,比如為了實現(xiàn)每隔一秒創(chuàng)建一個月餅精靈,游戲初始化時就可以使用pygame.time.set_timer(CREATE_MOONCAKE_EVENT, 1000)每隔一秒觸發(fā)一個CREATE_MOONCAKE_EVENT事件,CREATE_MOONCAKE_EVENT是在游戲精靈代碼文件lunar_sprites.py中定義的用戶事件變量。
然后在while True循環(huán)中使用self.__event_handler()處理該事件生成月餅精靈。
def __init__(self): print("游戲初始化") pygame.init() # 1.創(chuàng)建游戲的窗口 self.screen = pygame.display.set_mode(SCREEN_RECT.size) # 2.創(chuàng)建游戲的時鐘 self.clock = pygame.time.Clock() # 3.調(diào)用私有方法,完成精靈和精靈組的創(chuàng)建 self.__create_sprites() # 4.設(shè)置定時器事件——每1秒創(chuàng)建一次月餅 pygame.time.set_timer(CREATE_MOONCAKE_EVENT, 1000)
def __event_handler(self): for event in pygame.event.get(): # 判斷是否退出游戲 if event.type == pygame.QUIT: self.game_state = -1 elif event.type == CREATE_MOONCAKE_EVENT: # 創(chuàng)建月餅精靈 mooncake = Mooncake() # 將月餅精靈添加到月餅精靈組 self.mooncake_group.add(mooncake)
2)Pygame游戲事件定時器的停止,這里百度了好久都沒找到停止定時器的方法,其實停止很簡單,把第二個參數(shù)設(shè)為0就停止了,例如要停止上面每秒觸發(fā)的生成月餅事件,直接使用代碼pygame.time.set_timer(CREATE_MOONCAKE_EVENT, 0)即可。下面的代碼是停止倒計時事件,下一次游戲開始時重新開始倒計時。
def __check_menu_collide(self): click_list = pygame.sprite.spritecollide(self.menu_sprite, self.mouse_group,False) if len(click_list) > 0: """鼠標(biāo)擊中菜單,重新開始游戲""" # 1.設(shè)置游戲狀態(tài)為進(jìn)行中 self.game_state = 1 # 2.重置鼠標(biāo)位置 self.mouse_sprite.rect.top=0 self.mouse_sprite.rect.left=0 # 3.重新總時間,10s秒后結(jié)束 pygame.time.set_timer(CREATE_OVER_EVENT, 0) pygame.time.set_timer(CREATE_OVER_EVENT, 10000) # 4.重置分?jǐn)?shù)精靈 self.score_sprite.score = 0 # 5.重置倒計時精靈 self.countdown_sprite.start_time = 10
3)pygame判斷鼠標(biāo)點擊游戲精靈,這里也是百度了好久,最后還是找到解決辦法。需要自己創(chuàng)建一個鼠標(biāo)精靈類,創(chuàng)建該精靈的rect,每次鼠標(biāo)點擊判斷pygame.MOUSEBUTTONDOWN事件,同步更新鼠標(biāo)精靈rect的top,left,最后使用pygame.sprite.spritecollide()判斷鼠標(biāo)精靈與被點擊精靈之間是否有碰撞,有碰撞相當(dāng)于鼠標(biāo)點擊了對應(yīng)的精靈。下圖是鼠標(biāo)點擊重新開始精靈。
鼠標(biāo)點擊“重新開始”精靈
def __event_menu_handler(self): for event in pygame.event.get(): # 判斷是否退出游戲 if event.type == pygame.QUIT: self.game_state = -1 elif event.type == pygame.MOUSEBUTTONDOWN: if event.button == 1: # 點擊左鍵 pos = pygame.mouse.get_pos() self.mouse_sprite.rect.top = pos[1] self.mouse_sprite.rect.left = pos[0] self.menu_sprite.update()
四、游戲精靈代碼結(jié)構(gòu)
本游戲一共有七個精靈,分別是月餅精靈、兔子精靈、背景精靈、得分精靈、倒計時精靈、菜單精靈、鼠標(biāo)精靈,每個精靈都繼承Pygame的pygame.sprite.Sprite類。這里重點講一下月餅精靈和兔子精靈。
1)月餅精靈,首先調(diào)用父類初始化方法載入./images/mooncake2.png作為精靈的圖片對象,然后設(shè)置月餅精靈的下落self.speed速度為2到3之間,接著設(shè)置月餅精靈出現(xiàn)的self.rect.x橫坐標(biāo)實現(xiàn)月餅隨機出現(xiàn),最后當(dāng)月餅精靈超出屏幕時刪除月餅精靈。
月餅降落
class Mooncake(GameSprite): """月餅精靈""" def __init__(self): # 1.調(diào)用父類方法,創(chuàng)建月餅精靈,同時指定月餅圖片 super().__init__("./images/mooncake2.png") # 2.指定月餅的初始隨機速度 self.speed = random.randint(2, 3) # 3.指定月餅的初始隨機位置 self.rect.bottom = 0 max_x = SCREEN_RECT.width - self.rect.width self.rect.x = random.randint(0, max_x) def update(self): # 1.調(diào)用父類方法,保持垂直方向的飛行 super().update() # 2.判斷是否飛出屏幕,如果是,需要從精靈組刪除月餅 if self.rect.y >= SCREEN_RECT.height: # print("飛月餅屏幕,需要從精靈組刪除。。。") # kill方法可以將精靈從所有精靈組中移出,精靈就會被自動銷毀 self.kill() def __del__(self): # print("月餅掛了 %s" % self.rect) pass
2)兔子精靈,首先調(diào)用父類初始化方法載入./images/rabbit2.png作為精靈的圖片對象;然通過self.rect.centerx和self.rect.bottom設(shè)置兔子精靈一開始在屏幕中間偏下位置;接著通過self.rect.x += self.speed,設(shè)置兔子在水平方向移動;最后限制當(dāng)兔精靈超出屏幕。
兔子精靈左右移動
class Rabbit(GameSprite): """兔子精靈""" def __init__(self): # 1.調(diào)用父類方法,設(shè)置image&speed super().__init__("./images/rabbit2.png", 0) # 2.設(shè)置兔子的初始位置 self.rect.centerx = SCREEN_RECT.centerx self.rect.bottom = SCREEN_RECT.bottom - 20 def update(self): # 兔子在水平方向移動 self.rect.x += self.speed # 控制兔子不能移出屏幕 if self.rect.x < 0: self.rect.x = 0 elif self.rect.right > SCREEN_RECT.right: self.rect.right = SCREEN_RECT.right
另外,控制兔子根據(jù)鍵盤←鍵、→鍵左右移動的方法在精靈代碼文件lunar_war.py中實現(xiàn),以下是lunar_war.py中的控制代碼:
# 使用鍵盤提供的方法獲取鍵盤按鍵 - 按鍵元組 keys_pressed = pygame.key.get_pressed() # 判斷元組中對應(yīng)的按鍵索引值 if keys_pressed[pygame.K_RIGHT]: self.rabbit.speed = 5 elif keys_pressed[pygame.K_LEFT]: self.rabbit.speed = -5 else: self.rabbit.speed = 0
五、游戲完整源代碼
最后還是要再次預(yù)祝各位中秋節(jié)快樂,代碼就直接全上了,貼圖只能放下載了。
1)lunar_war.py代碼:
from lunar_sprites import * class PlaneGame(object): """兔子接月餅游戲""" def __init__(self): print("游戲初始化") pygame.init() # 1.創(chuàng)建游戲的窗口 self.screen = pygame.display.set_mode(SCREEN_RECT.size) # 2.創(chuàng)建游戲的時鐘 self.clock = pygame.time.Clock() # 3.調(diào)用私有方法,完成精靈和精靈組的創(chuàng)建 self.__create_sprites() # 4.設(shè)置定時器事件——每1秒創(chuàng)建一次月餅 pygame.time.set_timer(CREATE_MOONCAKE_EVENT, 1000) # 5.設(shè)置定時器事件——倒計時每1秒觸發(fā)一次 pygame.time.set_timer(CREATE_I_EVENT, 1000) # 6.設(shè)置定時器事件——10秒后結(jié)束游戲 pygame.time.set_timer(CREATE_OVER_EVENT, 10000) # 7.設(shè)置游戲狀態(tài),1代表開始,0代表結(jié)束,-1代表退出 self.game_state = 1 def __create_sprites(self): """創(chuàng)建背景精靈和精靈組""" # 創(chuàng)建背景的精靈組 bg1 = Background() bg2 = Background(True) self.back_group = pygame.sprite.Group(bg1, bg2) # 創(chuàng)建月餅的精靈組 self.mooncake_group = pygame.sprite.Group() # 創(chuàng)建兔子的精靈和精靈組 self.rabbit = Rabbit() self.rabbit_group = pygame.sprite.Group(self.rabbit) # 創(chuàng)建得分精靈和精靈組 self.score_sprite = Score() self.score_group = pygame.sprite.Group(self.score_sprite) # 創(chuàng)建倒計時精靈和精靈組 self.countdown_sprite = Countdown(10) self.countdown_group = pygame.sprite.Group(self.countdown_sprite) # 創(chuàng)建菜單精靈和精靈組 self.menu_sprite = Menu() self.menu_group = pygame.sprite.Group(self.menu_sprite) # 創(chuàng)建鼠標(biāo)精靈和精靈組 self.mouse_sprite = Mouse() self.mouse_group = pygame.sprite.Group(self.mouse_sprite) def start_game(self): print("游戲正式開始。。。") pygame.mixer.init() pygame.mixer.music.load("./images/plane_background.mp3") pygame.mixer.music.play() while True: if self.game_state == 1: """游戲進(jìn)行中""" # 1.設(shè)置刷新幀率 self.clock.tick(FRAME_PER_SEC) # 2.事件監(jiān)聽 self.__event_handler() # 3.碰撞檢測 self.__check_collide() # 4.更新/繪制精靈組 self.__update_sprites() # 5.更新顯示 pygame.display.update() elif self.game_state == 0: """游戲某一輪結(jié)束""" # 1.設(shè)置刷新幀率 self.clock.tick(FRAME_PER_SEC) # 2.更新游戲菜單 self.__event_menu_handler() self.__check_menu_collide() self.__update_menu() # 3.更新顯示 pygame.display.update() elif self.game_state == -1: """游戲退出""" PlaneGame.__game_over() def __event_handler(self): for event in pygame.event.get(): # 判斷是否退出游戲 if event.type == pygame.QUIT: self.game_state = -1 elif event.type == CREATE_MOONCAKE_EVENT: # 創(chuàng)建月餅精靈 mooncake = Mooncake() # 將月餅精靈添加到月餅精靈組 self.mooncake_group.add(mooncake) elif event.type == CREATE_I_EVENT: # 倒計時減1秒 self.countdown_sprite.start_time = self.countdown_sprite.start_time - 1 elif event.type == CREATE_OVER_EVENT: self.menu_sprite.display = True self.game_state = 0 # 使用鍵盤提供的方法獲取鍵盤按鍵 - 按鍵元組 keys_pressed = pygame.key.get_pressed() # 判斷元組中對應(yīng)的按鍵索引值 if keys_pressed[pygame.K_RIGHT]: self.rabbit.speed = 5 elif keys_pressed[pygame.K_LEFT]: self.rabbit.speed = -5 else: self.rabbit.speed = 0 def __check_collide(self): # 1.兔子接到月餅 mooncakes = pygame.sprite.spritecollide(self.rabbit, self.mooncake_group, True) # 2.判斷碰撞列表長度 if len(mooncakes) > 0: # 接到月餅得分加1 self.score_sprite.score = self.score_sprite.score + 1 def __update_sprites(self): self.back_group.update() self.back_group.draw(self.screen) self.mooncake_group.update() self.mooncake_group.draw(self.screen) self.rabbit_group.update() self.rabbit_group.draw(self.screen) self.score_group.update() self.score_group.draw(self.screen) self.score_group.update() self.score_group.draw(self.screen) self.countdown_group.update() self.countdown_group.draw(self.screen) def __event_menu_handler(self): for event in pygame.event.get(): # 判斷是否退出游戲 if event.type == pygame.QUIT: self.game_state = -1 elif event.type == pygame.MOUSEBUTTONDOWN: if event.button == 1: # 點擊左鍵 pos = pygame.mouse.get_pos() self.mouse_sprite.rect.top = pos[1] self.mouse_sprite.rect.left = pos[0] self.menu_sprite.update() def __check_menu_collide(self): click_list = pygame.sprite.spritecollide(self.menu_sprite, self.mouse_group,False) if len(click_list) > 0: """鼠標(biāo)擊中菜單,重新開始游戲""" # 1.設(shè)置游戲狀態(tài)為進(jìn)行中 self.game_state = 1 # 2.重置鼠標(biāo)位置 self.mouse_sprite.rect.top=0 self.mouse_sprite.rect.left=0 # 3.重新總時間,10s秒后結(jié)束 pygame.time.set_timer(CREATE_OVER_EVENT, 0) pygame.time.set_timer(CREATE_OVER_EVENT, 10000) # 4.重置分?jǐn)?shù)精靈 self.score_sprite.score = 0 # 5.重置倒計時精靈 self.countdown_sprite.start_time = 10 def __update_menu(self): self.menu_group.update() self.menu_group.draw(self.screen) self.mouse_group.update() self.mouse_group.draw(self.screen) @staticmethod def __game_over(): print("游戲結(jié)束") pygame.quit() exit() if __name__ == "__main__": # 創(chuàng)建游戲?qū)ο? game = PlaneGame() # 啟動游戲 game.start_game()
2)lunar_sprites.py代碼:
import random import pygame # 屏幕大小的常量 SCREEN_RECT = pygame.Rect(0, 0, 360, 480) # 刷新的幀率 FRAME_PER_SEC = 80 # 創(chuàng)建月餅的定時器常量 CREATE_MOONCAKE_EVENT = pygame.USEREVENT+1 # 創(chuàng)建游戲倒計時的定時器常量 CREATE_I_EVENT = pygame.USEREVENT+2 # 創(chuàng)建游戲結(jié)束的定時器常量 CREATE_OVER_EVENT = pygame.USEREVENT+3 # 字體顏色 WHITE = (255, 255, 255) class GameSprite(pygame.sprite.Sprite): """ 兔子接月餅游戲精靈 """ def __init__(self, image_name, speed=1): # 調(diào)用父類的初始化方法 super().__init__() # 定義對象的屬性 self.image = pygame.image.load(image_name) self.rect = self.image.get_rect() self.speed = speed def update(self): # 在屏幕的垂直方向上移動 self.rect.y += self.speed class Background(GameSprite): """游戲背景精靈""" def __init__(self, is_alt=False): # 1.調(diào)用父類方法實現(xiàn)精靈的創(chuàng)建(image/rect/speed) super().__init__("./images/background4.jpg") # 2.判斷是否是交替圖像,如果是,需要設(shè)置初始位置 if is_alt: self.rect.y = -self.rect.height def update(self): # 1.調(diào)用父類的方法實現(xiàn) super().update() # 2.判斷是否移出屏幕,如果移出屏幕,將圖像設(shè)置到屏幕的上方 if self.rect.y >= SCREEN_RECT.height: self.rect.y = -self.rect.height class Mooncake(GameSprite): """月餅精靈""" def __init__(self): # 1.調(diào)用父類方法,創(chuàng)建月餅精靈,同時指定月餅圖片 super().__init__("./images/mooncake2.png") # 2.指定月餅的初始隨機速度 self.speed = random.randint(2, 3) # 3.指定月餅的初始隨機位置 self.rect.bottom = 0 max_x = SCREEN_RECT.width - self.rect.width self.rect.x = random.randint(0, max_x) def update(self): # 1.調(diào)用父類方法,保持垂直方向的飛行 super().update() # 2.判斷是否飛出屏幕,如果是,需要從精靈組刪除月餅 if self.rect.y >= SCREEN_RECT.height: # print("飛月餅屏幕,需要從精靈組刪除。。。") # kill方法可以將精靈從所有精靈組中移出,精靈就會被自動銷毀 self.kill() def __del__(self): # print("月餅掛了 %s" % self.rect) pass class Rabbit(GameSprite): """兔子精靈""" def __init__(self): # 1.調(diào)用父類方法,設(shè)置image&speed super().__init__("./images/rabbit2.png", 0) # 2.設(shè)置兔子的初始位置 self.rect.centerx = SCREEN_RECT.centerx self.rect.bottom = SCREEN_RECT.bottom - 20 def update(self): # 兔子在水平方向移動 self.rect.x += self.speed # 控制兔子不能移出屏幕 if self.rect.x < 0: self.rect.x = 0 elif self.rect.right > SCREEN_RECT.right: self.rect.right = SCREEN_RECT.right class Score(pygame.sprite.Sprite): """ 得分游戲精靈 """ def __init__(self): # 調(diào)用父類的初始化方法 super().__init__() # 定義對象的屬性 self.score = 0 # 得分文字顯示設(shè)置 self.font_type = pygame.font.match_font('Microsoft YaHei') self.font = pygame.font.Font(self.font_type, 20) self.image = self.font.render("得分:"+str(self.score), True, WHITE, None) self.rect = self.image.get_rect() def update(self): self.image = self.font.render("得分:"+str(self.score), True, WHITE, None) self.rect = self.image.get_rect() class Countdown(pygame.sprite.Sprite): """ 倒計時游戲精靈 """ def __init__(self,start_time): # 調(diào)用父類的初始化方法 super().__init__() # 定義對象的屬性 self.start_time = start_time # 得分文字顯示設(shè)置 self.font_type = pygame.font.match_font('Microsoft YaHei') self.font = pygame.font.Font(self.font_type, 50) self.image = self.font.render(str(self.start_time), True, WHITE, None) self.rect = self.image.get_rect() self.rect.centerx = SCREEN_RECT.centerx self.rect.centery = SCREEN_RECT.centery def update(self): self.image = self.font.render(str(self.start_time), True, WHITE, None) self.rect = self.image.get_rect() self.rect.centerx = SCREEN_RECT.centerx self.rect.centery = SCREEN_RECT.centery class Menu(pygame.sprite.Sprite): """ 菜單游戲精靈 """ def __init__(self): # 調(diào)用父類的初始化方法 super().__init__() self.display = False # 得分文字顯示設(shè)置 self.font_type = pygame.font.match_font('Microsoft YaHei') self.font = pygame.font.Font(self.font_type, 30) self.image = self.font.render("", True, WHITE, None) self.rect = self.image.get_rect() def update(self): if self.display == True: # 得分文字顯示設(shè)置 self.image = self.font.render("重新開始", True, WHITE, None) self.rect = self.image.get_rect() self.rect.centerx = SCREEN_RECT.centerx self.rect.centery = SCREEN_RECT.centery+50 class Mouse(pygame.sprite.Sprite): """鼠標(biāo)游戲精靈""" def __init__(self): # 調(diào)用父類的初始化方法 super().__init__() self.display = False # 鼠標(biāo)矩形設(shè)置 self.image = pygame.Surface((5,5)) self.rect = self.image.get_rect() def update(self): super().update()
到此這篇關(guān)于Pygame改編飛機大戰(zhàn)制作兔子接月餅游戲的文章就介紹到這了,更多相關(guān)Pygame兔子接月餅內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python+Pygame實現(xiàn)海洋之神大冒險游戲
- Python pygame 動畫游戲循環(huán)游戲時鐘實現(xiàn)原理
- Python+Pygame實戰(zhàn)之實現(xiàn)小蜜蜂歷險記游戲
- Python+Pygame實戰(zhàn)之英文版猜字游戲的實現(xiàn)
- Pygame游戲開發(fā)之太空射擊實戰(zhàn)盾牌篇
- Pygame游戲開發(fā)之太空射擊實戰(zhàn)碰撞改進(jìn)篇
- Pygame游戲開發(fā)之太空射擊實戰(zhàn)添加圖形篇
- Pygame游戲開發(fā)之太空射擊實戰(zhàn)子彈與碰撞處理篇
- pygame實現(xiàn)一個類似滿天星游戲流程詳解
相關(guān)文章
Visual Studio Code搭建django項目的方法步驟
這篇文章主要介紹了Visual Studio Code搭建django項目的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09基于DataFrame篩選數(shù)據(jù)與loc的用法詳解
今天小編就為大家分享一篇基于DataFrame篩選數(shù)據(jù)與loc的用法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05Python讀入mnist二進(jìn)制圖像文件并顯示實例
這篇文章主要介紹了Python讀入mnist二進(jìn)制圖像文件并顯示實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04python中while和for的區(qū)別總結(jié)
在本篇內(nèi)容里小編給大家分享的是關(guān)于python中while和for的區(qū)別以及相關(guān)知識點,需要的朋友們可以學(xué)習(xí)下。2019-06-06python使用ctypes庫調(diào)用DLL動態(tài)鏈接庫
這篇文章主要介紹了python如何使用ctypes庫調(diào)用DLL動態(tài)鏈接庫,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-10-10DataFrame.to_excel多次寫入不同Sheet的實例
今天小編就為大家分享一篇DataFrame.to_excel多次寫入不同Sheet的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12