超神奇葩天才 发表于 2021-1-15 15:37:09

求解决方法

a = True
x = 1
while a:
print(x)
x += 1

运行此程序时
通过外界操作停止

大佬们怎么修改

qq1151985918 发表于 2021-1-15 15:37:10

我再给你改一改
import keyboard ,time

switch = #设置控制变量,初始值为 True

def setswitch(): #定义开关函数
    switch = False#控制变量重新赋值 False

n = 0
while switch:#用控制变量来执行 while 循环
    print(n)
    time.sleep(1)#设置循环间隔为1s
    n += 1
    keyboard.add_hotkey('x',setswitch)#将开关函数绑定按键 x ,即按x就会执行

print("已退出")

basketmn 发表于 2021-1-15 15:55:11

a可以设个循环值,比如a<10或者用break

Jerry_Green 发表于 2021-1-15 15:57:50

方法有很多,比如将你这个设置成一个函数,将a设为全局变量,然后创建一个线程使之运行,再在外部设置某种操作(比如监听)最终结果是使a的值改为false。

51Arduino32 发表于 2021-1-15 16:02:09

python shell   中 按 Ctrl + c{:10_334:}

超神奇葩天才 发表于 2021-1-15 16:42:11

Jerry_Green 发表于 2021-1-15 15:57
方法有很多,比如将你这个设置成一个函数,将a设为全局变量,然后创建一个线程使之运行,再在外部设置某种 ...

怎么通过外部操作?

jackz007 发表于 2021-1-15 16:50:44

      可能的 "外部操作" 有哪些,关电源算不算?你的意图是什么,纠结点是什么?

Jerry_Green 发表于 2021-1-15 17:51:29

超神奇葩天才 发表于 2021-1-15 16:42
怎么通过外部操作?

我也想问楼下的问题,说清楚点

zgwzgw 发表于 2021-1-15 19:19:48

{:10_269:}

°蓝鲤歌蓝 发表于 2021-1-15 19:47:07

开一个进程,主进程运行程序,开的进程用来监听,使用 进程通信 传递信号,根据传递的信号来判断是否使 主程序 退出。

超神奇葩天才 发表于 2021-1-15 20:32:00

°蓝鲤歌蓝 发表于 2021-1-15 19:47
开一个进程,主进程运行程序,开的进程用来监听,使用 进程通信 传递信号,根据传递的信号来判断是否使 主 ...

我不会这个
求程序
谢谢

qq1151985918 发表于 2021-1-15 21:52:48

我上次不是给你发了一个么
import time
switch =

def setswitch(switch):
    if switch ==1:
      switch = 0
    else:
      switch = 1

      #设置一个控制开关
      #循环中是 n == 5 时后执行此函数
      #由该函数控制循环是否继续
n = 0
while switch:
    print(n)
    time.sleep(2)
    if n == 5:
      setswitch(switch)
      print('退出')
      
    n += 1

超神奇葩天才 发表于 2021-1-15 23:45:27

本帖最后由 超神奇葩天才 于 2021-1-15 23:51 编辑

qq1151985918 发表于 2021-1-15 22:58
我再给你改一改

谢谢
页: [1]
查看完整版本: 求解决方法