异常处理

 
  
  1. try:  
  2.     try_suite  
  3. except exception1 as variable1:  
  4.     exception_suite1  
  5. ...  
  6. except exceptionN as variableN:  
  7.     exception_suiteN 
 
  
  1. s = input("enter an integer:")  
  2. try:  
  3.     i = int(s)  
  4.     print("valid integer entered:", i)  
  5. except ValueError as err:  
  6.     print(err)  
  7.  
  8. #invalid literal for int() with base 10: '3.5' 

算术运算符

+    -    *    /    += ...

 
  
  1. seeds = ['sesame''sunflower''pumpkin']  
  2. seeds += ['poppy']  
  3. print(seeds)  
  4. #['sesame', 'sunflower', 'pumpkin', 'poppy']  
  5. #这个时候的运算同seeds.append('poppy')等价  
  6. seeds += 2 
  7. #TypeError: 'int' object is not iterable  
  8. #类型不匹配  
  9. seeds += 'durian' 
  10. print(seeds)  
  11. #['sesame', 'sunflower', 'pumpkin', 'poppy', 'd', 'u', 'r', 'i', 'a', 'n']  
  12. #不同类型的即便可以执行,也会出现比较奇怪的结果  
  13. #这个时候用seeds.append('durian')可得到正确的结果 

 输入/输出

input()

print()

 
  
  1. #!user/bin/env python3  
  2.  
  3. print("Type integers, each followed by Enter; or just Enter to finish")  
  4.  
  5. total = 0 
  6. count = 0 
  7.  
  8. while True:  
  9.     line = input("integer:")    #输入数字  
  10.     if line:                    #如果非空  
  11.         try:  
  12.             number = int(line)  #转换成整数  
  13.         except ValueError as err:  
  14.             print(err)          #非整数  
  15.             continue 
  16.         total += number  
  17.         count += 1 
  18.     else:  
  19.         break 
  20.  
  21. if count:  
  22.     print("count = ", count, "total = ", total, "mean = ", total / count) 

* 应该尽量将异常处理模块放在程序末尾,以保证主要流程尽可能清晰