Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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函数_Python - Fatal编程技术网

在python中使用不同的按键调用不同的python函数

在python中使用不同的按键调用不同的python函数,python,Python,我有两个函数:screenshot()和reader()。我希望在按下0时调用screenshot(),在按下1时调用reader()。如果按下d,它应该退出。我就是这样尝试的: from PIL import Image import pyscreenshot as ImageGrab import datetime import time import os import pyperclip def screenshot(): if __name__ == "__main__":

我有两个函数:
screenshot()
reader()
。我希望在按下
0
时调用
screenshot()
,在按下
1
时调用
reader()
。如果按下
d
,它应该退出。我就是这样尝试的:

from PIL import Image
import pyscreenshot as ImageGrab
import datetime
import time
import os
import pyperclip

def screenshot():
    if __name__ == "__main__":
        im=ImageGrab.grab()
        timestr = time.strftime("%Y%m%d-%H%M%S")
        file_name = "sample_" + timestr + ".png"
        file_location = os.path.join('/path', file_name)
        im.save(file_location)

def reader():
    pyperclip.copy("sample")

while True:
    x = raw_input('Press enter for a random letter...')
    print x
    if x == "0":
        screenshot()

    if x == "1":
        reader()

    if x == "d":
        break

但它并没有像预期的那样发挥作用。当我按
0
时,什么也没有发生。当我按下
1
时,什么也没有发生。但是当第一次按下
d
时,它会调用
screenshot()
。下次按下
d
,它将退出

如果“\uuuuu name\uuuuu==”\uuuuuu main\uuuuu“:则删除此行

reader()正在工作,你知道它是如何工作的吗?如果要复制
示例
文本,请尝试在文本编辑器中粘贴。

我会将其中的两条if语句更改为elif语句(如果else,则会引发错误)。