分享

[教程]AutoHotKey的是是非非(逻辑判断)

 CHENYUMEN 2023-08-07 发布于云南
 AutoHotKey的是是非非 
既然讲AutoHotKey的是是非非,当然要普及一下逻辑的基本概念啦,根本上区分只有有两种逻辑:建立的逻辑和破坏的逻辑,任何逻辑都是凭空建立并且根本上无法自证的。
等大小、与或非!


逻辑关系是贯穿编程始终的,非逻辑的东西目前电脑还办不到,因此逻辑思路在编程中是极为重要的!autohotkey也不例外,还是从“等”开始吧!

“ 等 ”

“  ”作为比较的话,两种形式= 和 ==,啥区别呢?

用 = 比较字符串是不区分大小写的,而用 == 比较字符串是区分大小写的。

a := 'abc'b := 'ABC'if (a = b){ ; 条件成立}if (a == b){ ; 条件不成立}

“大”、“小”


大于(>)小于 (<)大于或等于 (>=), 和 小于或等于 (<=). 如果某个输入不是数字, 则按字母顺序比较 (加了引号的原义字符串例如 “55” 在这种情况中总是被当成是非数值的). 仅当 [StringCaseSense]打开时, 比较才区分大小写。
      大小很容易操作,几乎没什么特别的地方,这里就不深入讲解了。

“与”


and和&&是逻辑与的两种表达方式,例如:x > 3 and x < 10. 要提高性能, 则要应用求值优化. 此外, 以 AND/OR/&&/|| (或其他任何运算符) 开始的行会自动 附加到前一行的末尾

“或”


or和||是逻辑或的两种表达方式,其他没什么特殊的地方。

“非”


!和not是逻辑非的两种表达方式,除了优先级较低外, 其他的与 ! 运算符相同. 例如, not (x = 3 or y = 3) 等同于 !(x = 3 or y = 3).

应用实例:


像 NOT/AND/OR/>/=/< 这些运算符的运算会自动产生真值或假值的结果: 真值时结果为 1 而假值时为 0. 例如, 在下面的表达式中, 如果有一个条件为真则变量 Done 被赋值为 1:
Done := A_Index > 5 or FoundIt

重要说明:含有表达式的 if 语句与传统的 if 语句(例如 If FoundColor <> Blue),可以通过单词“if”后是否有开括号来区分。尽管通常把整个表达式包围在括号中,不过也可以写成这样:if (x > 0) and (y > 0)

此外, 如果单词 “if” 后的第一项为函数调用或类似 “not” 或 “!” 这样的运算符时, 开括号可以完全省略

Shift:: if (Count<1 && A_TimeSincePriorHotkey<400 && A_PriorHotkey = A_ThisHotkey) { Count++ } else { Count:=0 } if Count>0 { Run notepad Count:=0 }return

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多