[英]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.