python中的多进程为两个不同的函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中的多进程为两个不同的函数相关的知识,希望对你有一定的参考价值。
我正在尝试做一个简单的音乐播放器。我想在听音乐时向用户提问。
在下一行中,如果用户不想再听音乐,我会添加一个音乐列表并让他选择,并且,在将来,我想要一些命令跳过下一个音乐和一些关于那。
P1 = str(input('wanna again? (Y/N)'))
def DEF1():
if P1 == ('Y'):
P2 = str(input('do you know what is it? (Y/N)'))
if P2 == ('Y'):
P3 = str(input('what is it?'))
print(P3)
if P2 == ('N'):
print('this is a game sound!')
if P1 == ('N'):
print('that is it')
def DEF2():
while:
playsound.playsound('', True) #a music link
if __name__ == '__main_':
Process(target=DEF1).start()
Process(target=DEF2).start()
问题是:我想同时启动两个进程(DEF1和DEF2),它是'while'和'if'函数,DEF1是我想为程序用户做的一些问题,以及DEF2如果是'while,那就是重复的音乐
答案
如果我理解正确并且您希望第二种方法根据P3的值播放另一种声音或歌曲,则需要根据用户选择从DEF1返回一个值。
所以除了'print(P3)'之外,你想要包括'return P3'。
然后从DEF2中调用DEF1,将返回值分配给变量,例如:
song = DEF1()
变量'song'然后保留问题答案的值:'它是什么?'
这样做是允许DEF2用所有问题和答案调用DEF1。
DEF2然后使用DEF1的返回来确定要播放的歌曲。所以不是while语句,你可能想要一个if语句(你的while语句无论如何都不会工作,因为它没有循环条件)。
现在当您依次调用DEF2,DEF2时,将为您调用DEF1。
以上是关于python中的多进程为两个不同的函数的主要内容,如果未能解决你的问题,请参考以下文章
python3中的多处理在mac和linux上运行时得到不同的值