如何使用python在默认程序中打开多个文件

2024-10-01 22:31:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我们有一个函数os.startfile(),在这个函数中我可以将路径传递到文件,这样如果有任何一个声明,它就会在默认程序中打开

现在我需要一次打开多个文件,使用一个简单的for循环将在一个新实例中打开每个文件或关闭以前的文件

那么,是否有一个函数可以向其传递一个要立即打开的路径列表

对于声明:我需要模拟单击一个文件,然后按control键,然后单击其他文件,最后按enter键或使用文件资源管理器中的open“open with”

编辑:这是一张我需要从文件资源管理器模拟的照片 enter image description here

编辑:尝试这样一个简单的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)

这将打开列表中的最后一个元素,因为打开每个文件后,上一个元素将关闭


Tags: 文件函数路径声明编辑列表foros
2条回答

嗯,如果您只想执行音乐文件,可以实现如下快速脏方法:

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获取歌曲的持续时间,然后运行音频文件(使用默认播放器的openig),并等待准确的持续时间以运行下一个

如果我正确理解了你的问题,你可以使用一个简单的for循环

代码:

import os

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

相关问题 更多 >

    热门问题