melon@Lzl 发表于 2021-10-22 16:44:54

这种flag是怎么用的,哪位大佬讲解一下

if length <= 8:
    flag_len = 1
elif 8 < length < 16:
    flag_len = 2
else:
    flag_len = 3

jackz007 发表于 2021-10-22 16:58:10

本帖最后由 jackz007 于 2021-10-22 17:00 编辑

   flag_len 的可能值有 3 个,那就是 1、2、3,根据 flag_len 的数值,就可以知道 length 的情况。
   flag_len == 1 说明 length <= 8
   flag_len == 2 说明 8 < length < 16
   flag_len == 3 说明 length >= 16
   从而就把原本复杂的问题简单化了。

melon@Lzl 发表于 2021-10-22 17:02:15

jackz007 发表于 2021-10-22 16:58
flag_len 的可能值有 3 个,那就是 1、2、3,根据 flag_len 的数值,就可以知道 length 的情况。

...

我想知道flag_什么意思,怎么用的

jackz007 发表于 2021-10-22 17:07:21

本帖最后由 jackz007 于 2021-10-22 17:09 编辑

melon@Lzl 发表于 2021-10-22 17:02
我想知道flag_什么意思

       变量名而已,可以在遵守变量名规则的情况下根据自己的喜好随意取,在这里,flag_应该是变量名前缀,只不过是变量名称的一部分,没有任何特别的要求和限制,我猜测作者希望在看到这个名称的时候,能够迅速判定此变量的类型和用途。

傻眼貓咪 发表于 2021-10-22 17:07:58

match math.ceil(length/8):
    case 1: flag_len = 1
    case 2: flag_len = 2
    case _: flag_len = 3

白two 发表于 2021-10-22 22:54:58

只是用来标记之类的,比如说成绩 80 以上等级就为 A
那以后等级为 A 就可以作为一个判定条件而不需要重新用那么麻烦的条件判断

陈东豪 发表于 2021-10-23 13:42:00

flag_len整个是个变量名
'_'这个只是变量名取名的一种方式
用来分开一长串名字,显得简洁明了
当然,你也可以写成flaglen,完全没问题
只是习惯问题
页: [1]
查看完整版本: 这种flag是怎么用的,哪位大佬讲解一下