Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 用按键打开随机视频文件_Python_Keyboard - Fatal编程技术网

Python 用按键打开随机视频文件

Python 用按键打开随机视频文件,python,keyboard,Python,Keyboard,我正试图用Python编写一个程序,用键盘打开一个随机的视频文件(对我来说是F8)。我对编码非常陌生,目前陷入困境。我做到了这一点,我没有得到任何错误,但现在的程序是不是坚持左右。不知道下一步该怎么办。我的代码: import os import keyboard import string import random from openfile import openfile path = r"C:\Users\Rudy\Videos\GIFS" letter = string.asci

我正试图用Python编写一个程序,用键盘打开一个随机的视频文件(对我来说是F8)。我对编码非常陌生,目前陷入困境。我做到了这一点,我没有得到任何错误,但现在的程序是不是坚持左右。不知道下一步该怎么办。我的代码:

import os
import keyboard
import string
import random
from openfile import openfile


path = r"C:\Users\Rudy\Videos\GIFS"

letter = string.ascii_letters 
digit = string.digits     
def keyboardPress():
    mp3Select = random.choice(os.listdir(path)) 
    keypress = str(path + "\\" + mp3Select) 
    while True:
            if keyboard.is_pressed('F8'): 
                openfile(keypress)
            break

def main():
    while True:
        try:
            keyboardPress()
        except:
            pass

main()

要在按键时打开随机视频,您可以使用
键盘
模块中的事件挂钩,其中一个事件挂钩会为每个按键事件调用回调

为了防止程序终止,您可以使用在按下给定热键之前阻止程序执行的方法

使用:


编辑(见评论):

调用
main()
时使用此选项:


我不熟悉
openfile
模块。请解释你想发生什么。你想让程序停止播放视频吗?你说的程序不继续播放是什么意思?准确一点。我对这个程序的想法是,它要注意按F8键,然后通过打开该文件路径中的文件来播放视频。我还希望该程序能够继续运行,以便每次按键时都能继续播放视频。我所说的不停留是指程序在运行后立即关闭。继续并将其添加到我当前的代码中,替换了我的2个def部分。它似乎仍在立即终止程序。但我不确定我是否做错了什么。我不确定
openfile
模块的工作情况,似乎有问题。有错误消息吗?你能告诉我更多关于openfile函数的信息吗?很遗憾,我自己对它了解不多。我看到有人在用它,我想它在这里会很好用。如果您还有其他建议,我可以试试。如果您在windows上,请尝试使用
os.startfile(filePath)
代替
openfile
def keyPress(event):
    if event.name == 'f8': # filter the `f8` key press event
        fileName = random.choice(os.listdir(path))
        filePath = os.path.join(path, fileName)
        openfile(filePath) # open the video file

def main():
    keyboard.on_press(keyPress) # hook up the event handler
    keyboard.wait('esc') # blocks the program execution until `escape` key is pressed.

main()
try:
    main()
except Exception as ex:
    print(ex)