一 概念
众所周知,python中的获取键盘输入,input函数是没办法用在子程序的,这就限制了它的用途。想要在子程序中获取键盘输入。唯有
fn=sys.stdin.fileno函数了。
二 实例解析
在主进程中敲写代码fn=sys.stdin.fileno(),然后将获取到的文件描述符fn传入子进程,子进程敲写代码sys.stdin = os.fdopen(fn),
然后就可以正常使用sys.stdin.readline()获取键盘输入了。
下面给出一个例子:
import os import sys from multiprocessing import Process def test_input(fn): sys.stdin = os.fdopen(fn) while True: #info = sys.stdin.readline() info = int(sys.stdin.readline().strip('\n')) print("start print info!") print(info) if info == 12: print("equel is 1") if __name__ == "__main__": print("start progress!") fn = sys.stdin.fileno() Process(target=test_input, args=(fn, )).start()
结果:
start progress! 12 start print info! 12 equel is 1 ^Z
三 总结
这里注意输入的值,想要转成int,还需要一个强制转换函数。
作者:虚生 出处:https://www.cnblogs.com/dylancao/ 以音频和传感器算法为核心的智能可穿戴产品解决方案提供商 ,提供可穿戴智能软硬件解决方案的设计,开发和咨询服务。 勾搭热线:邮箱:1173496664@qq.com weixin:18019245820 市场技术对接群:347609188 |
![]() |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
2022-10-24 基于ads1299神经信号采集之调试总结和备忘
2022-10-24 ADS1299芯片datasheet 重点解析
2019-10-24 日常用的搜索引擎,怎么使用才能达到四两拨千斤的效果
2018-10-24 numpy中函数shape的用法
2017-10-24 git关于文件权限修改引起的冲突及忽略文件权限的办法
2017-10-24 Introduction to CELP Coding