全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 999|回复: 7
打印 上一主题 下一主题

请教个python问题 关于函数间传参

[复制链接]
匿名
跳转到指定楼层
1#
匿名  发表于 2023-5-12 20:28:26 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
推荐
发表于 2023-5-12 20:53:14 | 只看该作者
本帖最后由 雁过拔毛的MJJ 于 2023-5-12 21:07 编辑

我感觉程序没毛病,a和c“同时运行”(线程的同时你懂的)
为什么感觉必须要a运行后c才能运行,问题出在这里,b = queue.get() 假如a产生了3个m值,但是c运行到第四次,这里queue.get处于阻塞状态,一直在等待着值进来,然后c就停了

建议全局变量改为数组,a函数一直向数组里添加m值,然后c函数调用参数的时间用[-1]获得最新值就可以了
2#
发表于 2023-5-12 20:40:51 | 只看该作者


c应该是必须有m参数才能运行?  那c在运行前做一个判断不行吗?
或者a在运行时会产生n的m参数,把它储存起来,让c调用?

你提问题逻辑不恰
4#
发表于 2023-5-12 20:46:52 | 只看该作者
应该可以换种思路,A运行结束把结果传递给全局变量B,C函数不传参,而是变成去读取全局变量B的值,就应该可以做到你所需要的效果了
6#
发表于 2023-5-12 20:56:43 | 只看该作者
这个程序想复杂了

def a():
retuen m

def b(arg):
do sth

def main():
    while 1:
    m = a()
    b(m)
7#
发表于 2023-5-12 21:04:35 | 只看该作者
爲啥問個編程問題還要匿名。。。
匿名
8#
匿名  发表于 2023-5-12 21:19:46
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-12-8 14:09 , Processed in 0.060569 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表