if each else
时间: 2023-12-13 14:05:37 浏览: 32
if-else语句和each循环是两个不同的概念,它们在不同的场景下使用。if-else语句用于根据条件执行不同的代码块,而each循环用于遍历列表或映射中的元素并执行相同的代码块。以下是它们的用法示例:
1. if-else语句
```scss
p {
@if 1 + 1 == 2 {
width: 30px;
} @else {
width: 100px;
}
}
```
上述代码中,如果1+1等于2,则设置段落的宽度为30像素,否则设置为100像素。
2. each循环
```scss
$sprite: long1 long2 long3 long4 long5 !default;
%spriteAll {
background: url('menglong.png') no-repeat;
}
@each $one in $sprite {
.#{$one}-two {
@extend %spriteAll;
background-position: 0 index($sprite, $one) * (-30px);
}
}
```
上述代码中,遍历$sprite列表中的每个元素,并为每个元素生成一个类名为“long1-two”、“long2-two”等的CSS类,其中包含一个背景图像和一个背景位置。
相关问题
mysql触发器ifelse语句
MySQL触发器中可以使用IF ELSE语句来实现条件判断。以下是一个示例:
```
CREATE TRIGGER `trigger_name` BEFORE INSERT ON `table_name`
FOR EACH ROW BEGIN
IF new.column_name = 'value1' THEN
SET new.another_column_name = 'result1';
ELSEIF new.column_name = 'value2' THEN
SET new.another_column_name = 'result2';
ELSE
SET new.another_column_name = 'default_result';
END IF;
END;
```
这个触发器会在每次插入数据到`table_name`表时触发,在插入之前根据`new.column_name`字段的值进行条件判断,然后设置`new.another_column_name`字段的值。如果`new.column_name`字段的值为`value1`,则将`new.another_column_name`的值设置为`result1`;如果为`value2`,则将其设置为`result2`;否则设置为`default_result`。
def checkClicked(group, mouse_pos, group_type='NUMBER'): selected = [] # 数字卡片/运算符卡片 if group_type == GROUPTYPES[0] or group_type == GROUPTYPES[1]: max_selected = 2 if group_type == GROUPTYPES[0] else 1 num_selected = 0 for each in group: num_selected += int(each.is_selected) for each in group: if each.rect.collidepoint(mouse_pos): if each.is_selected: each.is_selected = not each.is_selected num_selected -= 1 each.select_order = None else: if num_selected < max_selected: each.is_selected = not each.is_selected num_selected += 1 each.select_order = str(num_selected) if each.is_selected: selected.append(each.attribute) # 按钮卡片 elif group_type == GROUPTYPES[2]: for each in group: if each.rect.collidepoint(mouse_pos): each.is_selected = True selected.append(each.attribute) # 抛出异常 else: raise ValueError('checkClicked.group_type unsupport <%s>, expect <%s>, <%s> or <%s>...' % (group_type, *GROUPTYPES)) return selected详细讲解这段代码
这段代码的作用是检查用户是否点击了一组 sprite,并返回被选中的 sprite 的属性。函数接受三个参数:`group` 表示要检查的 sprite 组,`mouse_pos` 表示鼠标点击的位置,`group_type` 表示 sprite 组的类型,可以是数字卡片、运算符卡片或按钮卡片。
如果 `group_type` 是数字卡片或运算符卡片,该函数会遍历 `group` 中的每个 sprite,判断它是否被选中。如果被选中,则将其从选中列表中删除;如果未被选中,则将其添加到选中列表中。选中的 sprite 的属性将被添加到 `selected` 列表中,并以该 sprite 的选中顺序(1 或 2)作为键值对的值返回。如果选中的数量超过了该类型 sprite 的最大数量(数字卡片最多选 2 张,运算符卡片最多选 1 张),则不会将新的 sprite 添加到选中列表中。
如果 `group_type` 是按钮卡片,该函数会遍历 `group` 中的每个 sprite,并将被点击的 sprite 添加到选中列表中。被选中的 sprite 的属性将被添加到 `selected` 列表中。
如果 `group_type` 不是数字卡片、运算符卡片或按钮卡片,则该函数会抛出一个 ValueError 异常,提示 `group_type` 的值不受支持。
最后,该函数返回一个包含选中 sprite 属性的列表。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)