Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
机器未来
Paddle
提交
03deb41d
P
Paddle
项目概览
机器未来
/
Paddle
与 Fork 源项目一致
Fork自
PaddlePaddle / Paddle
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
03deb41d
编写于
4月 03, 2020
作者:
L
liym27
提交者:
GitHub
4月 03, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
API (switch_case) error message enhancement. test=develop (#23429)
上级
cd348dc4
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
5 addition
and
15 deletion
+5
-15
python/paddle/fluid/layers/control_flow.py
python/paddle/fluid/layers/control_flow.py
+5
-15
未找到文件。
python/paddle/fluid/layers/control_flow.py
浏览文件 @
03deb41d
...
...
@@ -3361,24 +3361,14 @@ def switch_case(branch_index, branch_fns, default=None, name=None):
helper
=
LayerHelper
(
'switch_case'
,
**
locals
())
def
_check_args
(
branch_index
,
branch_fns
,
default
):
if
not
isinstance
(
branch_index
,
Variable
):
raise
TypeError
(
_error_message
(
"The type"
,
"branch_index"
,
"switch_case"
,
"Variable"
,
type
(
branch_index
)))
if
convert_dtype
(
branch_index
.
dtype
)
not
in
[
"uint8"
,
"int32"
,
"int64"
]:
raise
TypeError
(
_error_message
(
"The data type"
,
"branch_index"
,
"switch_case"
,
"uint8, int32 or int64"
,
convert_dtype
(
branch_index
.
dtype
)))
check_variable_and_dtype
(
branch_index
,
'branch_index'
,
[
'uint8'
,
'int32'
,
'int64'
],
'switch_case'
)
if
convert_dtype
(
branch_index
.
dtype
)
!=
"int64"
:
branch_index
=
cast
(
branch_index
,
"int64"
)
if
not
isinstance
(
branch_fns
,
(
list
,
tuple
,
dict
)):
raise
TypeError
(
_error_message
(
"The type"
,
"branch_fns"
,
"switch_case"
,
"dict, tuple or list"
,
type
(
branch_fns
)))
check_type
(
branch_fns
,
'branch_fns'
,
(
list
,
tuple
,
dict
),
'switch_case'
)
branch_fns
=
branch_fns
.
items
()
if
isinstance
(
branch_fns
,
dict
)
else
branch_fns
...
...
@@ -3391,7 +3381,7 @@ def switch_case(branch_index, branch_fns, default=None, name=None):
if
not
isinstance
(
index_fn_pair
,
tuple
):
raise
TypeError
(
_error_message
(
"The elements' type"
,
"branch_fns"
,
"switch_case"
,
"tuple"
,
type
(
branch_fns
)))
"switch_case"
,
tuple
,
type
(
branch_fns
)))
if
len
(
index_fn_pair
)
!=
2
:
raise
TypeError
(
...
...
@@ -3404,7 +3394,7 @@ def switch_case(branch_index, branch_fns, default=None, name=None):
if
not
isinstance
(
key
,
int
):
raise
TypeError
(
_error_message
(
"The key's type"
,
"branch_fns"
,
"switch_case"
,
"int"
,
type
(
key
)))
"switch_case"
,
int
,
type
(
key
)))
if
key
in
keys_of_fns
:
raise
ValueError
(
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录