Clement_Levi 发表于 2020-3-28 01:28:49

自制”自锁开关“函数,用途除字符串处理外尚可开发

如题,不知道有没有和论坛里其他大佬的东西撞车

这个东西的思路来源于现实中的电灯开关,最后的实现结果却是借助输入来自动切换两种模式。
当有输入字符串时,可以对字符串进行操作;当输入为空时,可以认为是在切换到另一种操作模式,然后继续执行对应的操作。
代码如下:
def Switch():#打包成函数
   def mode1():#模式一,在判定语句之前可以随意插入在此模式下希望执行的操作
          a = input('1')#提示输入
         
          #在此进行操作
         
          if a == '':#判定语句,当输入值为空时切换到模式2
               return 1#导致模式切换检测
          else:
               return 0

   def mode2():#模式2,类上
          a = input('2')
          if a == '':
               return 0
          else:
               return 1

   while True:#模式切换检测
          while mode1():
               while mode2():
                  mode2()
Switch()
事实上,最后运行的结果如下:

1
2
1
2
1
2asds
2asda
2asdasd
2
2
1asd
1asdas
1
2asdd
2
2asdas
2asdad
2sadasd
2
2
1
#手动中断
此代码内没有设置冒号,实际上除了1和2以外所有字符都是在模拟”有输入等待操作“的情况。
值得注意的是,在其中的第9-10和19-20行都出现了切换不灵敏的情况。

这个帖子的目的是抛砖引玉,也想了解一下有没有能实现这个功能的内置函数;此外,对于切换不灵敏的情况又应当如何优化。

永恒的蓝色梦想 发表于 2020-3-28 07:47:43

然而……又有什么用呢?{:10_327:}
页: [1]
查看完整版本: 自制”自锁开关“函数,用途除字符串处理外尚可开发