Python实现随机选播视频的示例代码

一、示例代码:

python 复制代码
import os
import random
import subprocess

video_type = ['avi', 'mp4', 'rm', 'rmvb', 'VOB']


def random_walk(root_dir):
    all_videos = []
    for root, dirs, files in os.walk(root_dir):
        for file in files:
            extract_str = file.split('.')[-1].lower()
            if extract_str in video_type:
                all_videos.append(os.path.join(root, file))

    return all_videos


if __name__ == '__main__':
    all_videos = random_walk('/home/lijiang/Videos')
    print(all_videos)

    for i in range(random.randint(1, 5)):
        video = random.choice(all_videos)

    print('打开播放视频:' + video)
    subprocess.call(['open', video])

二、运行结果:

三、源码说明:

1、若是Windows系统,将Linux下的subprocess.call()替换为os.startfile(video)。此方法会调用默认播放器选播视频。视频文件的扩展名,这里只列出了常见的几种格式。

相关推荐
NutShell Wang17 小时前
Vite 8.1 深度拆解:Rolldown 统一打包器如何终结前端构建的「双引擎时代」
前端·rust·开源·vite·开发者工具·vibe coding
朱容zr33313317 小时前
请解释“回表”的概念。
java·前端·数据库
开开心心就好17 小时前
批量图片OCR识别重命名工具完全免费
随机森林·智能手机·ocr·电脑·word·音视频·最小二乘法
Cachel wood17 小时前
hands-on-modern-rl:动手学强化学习策略梯度reinforce
开发语言·python
leslie11817 小时前
webpack笔记
前端·webpack
蓝斯49717 小时前
一碰即传,重构跨设备文件分享体验
开发语言·python·重构
宁风NF17 小时前
JavaScript:内存、垃圾回收、性能优化
开发语言·前端·javascript·学习·性能优化·es6
勾勾圈圈蛋蛋17 小时前
DOM、BOM、DOM操作详解 + 结合Vue响应式关联梳理
前端
寒水馨17 小时前
macOS下载、安装uv-0.12.0(附安装包uv-aarch64-apple-darwin.tar.gz)
python·macos·rust·项目管理·包管理器·astral·pip替代
打妖妖灵滴哪吒18 小时前
IOS模态窗口的作用与设计原则
前端·ui