调用/引用的try:
正下方的缩进行是什么?我听过“try:
的身体”和“try:
的表达”。请澄清。 (见用户 - 戳 - 回答)
try:
,except:
,while:
等等是什么意思?像True
和False
一样被称为“陈述”。 (见用户 - 戳 - 回答)
有没有理由将function1更改为function2。它们之间的唯一区别是ValueError
。这些函数只能强制用户输入整数。 (见用户 - 戳 - 回答)
功能1
def get_integer(LIMIT_PROMPT):
while True:
try:
return int(input(LIMIT_PROMPT))
except:
pass
我见过很多except statement:
并且在body / expression中有一段代码可以在try:
我在两个程序中使用了这个特殊功能,并没有遇到任何麻烦。
函数2
def get_integer(LIMIT_PROMPT):
while True:
try:
return int(input(LIMIT_PROMPT))
except ValueError:
pass
答案 0 :(得分:0)
像True和False一样被称为“陈述”
True
和False
都是引用bool
类型的单例值的变量。作为变量,它们是atomic expressions。
try
,except
,while
等语句,或更准确地说,是 compound statements ,因为它们包含一组其他语句。通常,您将该组语句称为块,就像在其他语言中一样,它们被封装在创建令牌的块中(例如{
和}
)。在Python规范中,它们被称为 suite 。
每个复合语句的套件都没有特别的名称,所以我猜你可以称它们为“try suite”,“除套件”等,或“try block”和“except block”。
是否有任何理由将此功能更改为此(唯一的更改是ValueError)
通常,当您检查异常时,您应该尽可能具体。如果您知道在try块中执行的操作可以抛出类型为X
的异常,则仅捕获/除异常X
。
不指定类型会使except catch 任何异常,包括那些你可能不知道它们可能被抛出的异常,所以你会丢失有用的信息。关于SO已经有很多问题已经处理过这个话题,所以我只会引导你找到我刚刚找到的random one。异常管理与语言无关,因此您只需将您阅读的内容应用于Python。