问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

python脚本如何添加启动和停止按钮?

发布网友 发布时间:2022-04-20 08:05

我来回答

3个回答

热心网友 时间:2023-07-04 08:05

可以使用一个标志变量来控制程序的启动和结束。
首先,在主程序中设置一个标志变量,例如 running,用于指示程序是否处于运行状态。在程序开始时,running 应设置为 False。
然后,在每次循环中检查 running 的值。如果 running 为 True,则执行 auto() 函数;如果 running 为 False,则等待用户输入命令。
当用户输入 qd 命令时,将 running 设置为 True,并执行 auto() 函数。当用户输入 tz 命令时,将 running 设置为 False,并执行 reset() 函数。
示例代码如下:
running
running = False
while True:
cmd = input("请输入命令:")
if cmd == 'qd':
running = True
elif cmd == 'tz':
running = False
if running:
auto()
else:
reset()
在这段代码中,我们使用了一个 while 循环来不断接收用户的命令。在每次循环中,我们会读入用户的命令,并根据命令的不同设置 running 的值。如果 running 为 True,则执行 auto() 函数;如果 running 为 False,则执行 reset() 函数。
这样,用户就可以随时输入 tz 命令来停止程序,也可以输入 qd 命令来重新启动程序。
希望这些信息能够帮助您。

热心网友 时间:2023-07-04 08:06

from time import sleep

def auto():
while True:
cd=input("请输入命令:")
if cd=='qd':
print("已启动")
return zidong()
if cd=='tz':
print("已重置")
return reset()

def reset():
return

def zidong():
while True:
sleep(0.05)
zt=side()
if zt=='BUY':
return sell()
elif zt=='SELL':
return buy()
else:
return

def side():
a=input(f"选择状态:输入BUY或SELL:")
print(f"选择的是:{a}\n当前进入:{a}模式")
return a

def sell():
tag="-"
print("操作中…")
print(f"本次操作完毕")
print(f"当前状态:SELL\n{tag*60}\n")
return auto()

def buy():
tag="-"
print("操作中…")
print(f"本次操作完毕")
print(f"当前状态:BUY\n{tag*60}\n")
return auto()

if __name__ == "__main__":
auto()

'''python运行效果
请输入命令:qd
已启动
选择状态:输入BUY或SELL:BUY
选择的是:BUY
当前进入:BUY模式
操作中…
本次操作完毕
当前状态:SELL
------------------------------------------------------------
请输入命令:qd
已启动
选择状态:输入BUY或SELL:SELL
选择的是:SELL
当前进入:SELL模式
操作中…
本次操作完毕
当前状态:BUY
------------------------------------------------------------
请输入命令:tz
已重置

'''

热心网友 时间:2023-07-04 08:06

您可以使用 Python 中的 threading 模块来实现这个功能。threading 模块提供了一个 Thread 类,允许您创建和管理多线程。
您可以把 auto() 函数放到一个新的线程中执行,然后在主线程中检查输入命令,如果检测到输入了 tz 命令,则可以通过调用 Thread 类的 stop() 方法来终止线程。代码大概长这样:
from threading import Thread
def auto():
# 自动运行流程
while True:
sleep(0.05) # 限速
if side() == 'BUY':
sell()
if side() == 'SELL':
buy()
auto_thread = Thread(target=auto)
while True:
cd = input("请输入命令:")
if cd == 'qd':
auto_thread.start()
if cd == 'tz':
auto_thread.stop()
reset() # 重置流程
这样就可以在自动运行流程进行的同时随时输入 tz 命令来终止流程了。追问非常感谢您的细致回答,尝试了一下,在输入tz停止auto_thread.stop()线程时,提示AttributeError: 'Thread' object has no attribute 'stop',请问如何解决?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
济南的冬天赏析 济南的冬天全文赏析 魅蓝Note5#魅蓝3S锁屏就重启是什么原因 ...药?小狗已经三天了不吃不喝还呕吐尿很黄不拉,精神不好去宠物医院化验... 狗狗今天吐了黄水昏昏欲睡 还抽搐给喝了妈咪爱睡了一觉好了也许但还是... ...了开始拉稀,不吃东西,昨天超级没精神,后给喂了点药,今天精神点了... 昨晚狗狗又吐又拉然后我喂了妈咪爱,今天早上没精神的,刚刚又喂了妈 小狗两个月,昨天拉稀不吃饭,我喂了妈咪爱,下午有精神了可那跑着玩。今 ... 国内有哪些生产疫苗的公司?研发、质量管理水平分别如何? 三联恒通(北京)科技发展有限公司怎么样? 什么是三联集团 Python里怎么添加角色 Python中如何添加注释? 安装python怎么添加环境变量 python如何向数组中添加元素 win10安装不了软件 阿水加盟TES战队后,他们在直播间发生了哪些搞笑的... LPL里EDG的meiko用的是雷蛇的鼠标?哪一款啊? 为什么RNG选手Ming被称为交际花呢? LOL有哪些冷知识呢? 爆炸adc胖炸lol在国服是什么段位 greendao不能使用rxjava2怎么处理 德云色昨天的直播,复盘了EDG VS SKT.终于知道是谁... RxJava 2.0有什么不同 厂长clearlove,有一场爱萝莉和meiko的直播,扳了... 几种编程思想(链式编程,响应式编程,函数 iBoy小炮四杀,他的这个4杀对队伍来说有何影响? 昨天看mlxg和meiko的双排直播,mlxg坐的是谁家的椅... 响应式编程与函数式编程哪个是未来的趋势 看meiko直播听到的男生唱的,歌词的最后重复了三遍... android开发一般都使用什么框架 windows10怎么把python添加到路径 python如何添加pip 如何在python中添加自定义模块 怎么在Path中添加Python路径 如何添加python环境变量配置 python如何添加多个空格 python能添加注释么 怎么添加 如何在python中进行数据库的添加 如何添加python interpreter python 怎样添加模块加载路径 python 怎么添加列名(表头)? 如何将python添加到环境变量 怎么把python添加到环境变量 python 添加文本内容到文件 win10打不开安装程序什么都不没反应 面诊十二句口诀是什么? 面诊十二句口诀 面诊的口诀: 中医面诊的内容介绍 面诊的什么是面诊