简单的问题。我需要让用户输入一个数字,然后使用try / except将字符串转换为整数。
我以前做过类似的事情。实际上,我之前做过很多复杂的事情,这就是为什么我对自己的代码无法正常工作感到困惑的原因。
userNum = input('enter a number: ')
try:
num = int(userNum)
由于某种原因,这会导致语法错误。 错误语句显示为:
Syntax Error: num = int(userNum): <string>, line 3, pos 23
谁能告诉我为什么这会导致问题以及如何解决?我很困惑。
答案 0 :(得分:2)
尝试至少拥有以下一项 除外或最终表达式如下:
userNum = input('enter a number: ')
try:
num = int(userNum)
except ValueError as e:
print(e)
答案 1 :(得分:2)
如果您希望某些事情总是发生,则可以最终使用;如果您希望某些错误发生,请使用:
userNum = input('enter a number: ')
try:
num = int(userNum)
finally:
print("something")
或:
userNum = input('enter a number: ')
try:
num = int(userNum)
except Exception:
print("exception something")
finally:
print("something")
或:
userNum = input('enter a number: ')
try:
num = int(userNum)
except Exception:
print("exception something")
答案 2 :(得分:1)
在syntax of a try
statement中,您可以看到至少有一个public CompletableFuture<List<Employee>> buildEmployee (List<EmployeeResponse> employeeInfo) {
// First call is Async call
CompletableFuture<Map<String, List<EmployeeReward>>> rewards = CompletableFuture.supplyAsync(()->reward(employeeInfo), executor);
//Second call by main thread
Map<String, List<EmployeePoints>>> points = points(employeeInfo);
// main thread is Blocked and get the result of the future.
rewards.get(); //throws InterruptedException,ExecutionException
// Now combine the result and return list
return CompletableFuture.completedFuture(result);
}
部分或一个except
部分是必须的。
工作代码,除了:
finally