簡體   English   中英

如何使用python在默認程序中打開多個文件

[英]how to open multiple files in default program with python

我們有函數os.startfile() ,我可以在其中傳遞文件的路徑,因此如果有任何聲明,它將在默認程序中打開。

現在我需要一次打開多個文件,使用簡單的 for 循環將在新實例中打開每個文件或關閉以前的文件。

那么是否有一個函數可以傳遞一個要立即打開的路徑列表?

對於聲明:我需要模擬點擊一個文件,然后按控制然后點擊其他文件,最后按回車鍵或使用文件資源管理器中的打開“打開方式”。

編輯:這是我需要從文件資源管理器中模擬的照片在此處輸入圖片說明

編輯:嘗試這樣一個簡單的 for 循環

import os
my_list = [ "D:\Music\Videoder\Abyusif I أبيوسف\ِAbyusif - Kol 7aga Bteb2a Gham2a l أبيوسف - كل حاجة بتبقى غامقة.mp3",
            "D:\Music\Videoder\Abyusif I أبيوسف\Abyusif- 3ala maydoub eltalg (Prod by NGM) l أبيوسف- على ما يدوب التلج.mp3"]

for song in my_list:
    
    os.startfile(song)

這將打開列表中的最后一個元素,因為在打開每個文件后,前一個元素被關閉

好吧,如果您只想執行音樂文件,可以像這樣實現一種快速而骯臟的方法:

import os
import time
from win32com.client import Dispatch

my_song_list = [
    r'path\to\my\awesome\music\1.mp3',
    r'path\to\my\awesome\music\2.mp3',
    r'path\to\my\awesome\music\3.mp3'
]
wmp = Dispatch('WMPlayer.OCX')
for i, path in enumerate(my_song_list):
    song = wmp.newMedia(path)
    os.startfile(path)
    if i < len(my_song_list) - 1:
        time.sleep(song.duration)

使用 Windows Media Player 獲取歌曲的持續時間,然后運行音頻文件(使用默認播放器打開),並准確等待持續時間運行下一個。

如果我正確理解你的問題,你可以使用一個簡單的 for 循環。

代碼:

import os

file_paths = ["<file path here>", "<file path here>"]
for file in file_paths:
    os.startfile(file)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM