Python 如何设置运行时输入参数

2019-01-14 11:17:37 +08:00
 stebest

平时用 python 不多,目前是想实现在命令行运行 python 的时候,比如打开一个相机视频流,然后运行过程中实时在命令行中输入各个参数的值,如曝光白平衡之类的。但好像看到的都是在程序调用时输入参数,但是像 nvgstcapture 命令就可以实现在打开摄像头预览之后实时设置参数。 不知道有没有大佬做过类似的事?

4893 次点击
所在节点    Python
15 条回复
xpresslink
2019-01-14 12:02:16 +08:00
撸主的需求没有太看懂。
试一下 input()
foxyier
2019-01-14 12:32:07 +08:00
click 模块
alvin666
2019-01-14 12:35:25 +08:00
while True:
input('曝光:')
aaa5838769
2019-01-14 13:08:02 +08:00
input 吧
xiaoheijw
2019-01-14 13:37:12 +08:00
argv?
stebest
2019-01-14 13:38:02 +08:00
@xpresslink
@foxyier
@alvin666
@aaa5838769
非常感谢,其实 input 就可以实现,我是想有没有一个函数,输入参数时自动捕捉值给变量,有的话会方便不少。目前就是新开线程然后等待 input 实现的
stebest
2019-01-14 13:38:26 +08:00
@xiaoheijw argv 是调用时参数吧,不是运行时参数
SeaRecluse
2019-01-14 14:02:45 +08:00
QT 这样的?看你描述像一个交互的客户端程序
kernelG
2019-01-14 14:45:42 +08:00
@stebest 我想我知道你的意思
你可以这样去实现
起一个 thread
这个 thread 啥也不干,就死循环,隔段时间就检测输入
然后如果检测到输入就解析,把变量传递过去,ok 了
0ZXYDDu796nVCFxq
2019-01-14 15:10:02 +08:00
1.做个图形界面
2.如果只有命令行,可以做个接口,通过接口修改。如果你会前端,甚至可以做个 Web 控制台
3.连接口都懒得做,甚至可以通过信号量来控制,你捕获信号量并修改变量
4.再不行,写个配置文件,定时检测然后加载
5.做个命令行交互
byteli
2019-01-14 18:21:04 +08:00
专门线程监听输入,或者使用信号。总之是要异步
ml1344677
2019-01-14 20:53:40 +08:00
类似于 socket 里面的 select()函数?
expy
2019-01-14 21:08:49 +08:00
ncurses 之类的库做个命令行界面。
https://docs.python.org/3/howto/curses.html
stebest
2019-01-14 22:04:24 +08:00
@SeaRecluse 对,就是想问下 py 命令行脚本在终端有没有类似 QT 这种方式实现
stebest
2019-01-14 22:16:17 +08:00
@kernelG
@gstqc
@expy
@ml1344677
@byteli
谢谢诸位建议,另外,目前看了一下 python curses,感觉值得一试

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/526810

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX