本学习笔记为阿里云天池龙珠计划python训练营的学习内容,学习链接为:天池龙珠计划python训练营
学习内容:
python训练巩固基础
1、 条件与循环
2、 异常处理
条件与循环:
1、if条件语句
2、 if-else条件语句
3、 if-elif-else条件语句
条件语句
if语句一般形式如下:
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
'''
out:
如果condition_1为True,将执行statement_block_1,否则判断condition_2是否为True;是则执行statement_block_2,condition_2为False时,执行statement_block_3
'''
-
注意每个if条件后面要跟冒号
:
,表示满足条件时要执行的语句; -
使用缩进来划分语句块
实例:
var = 3
if var:
print ("if_1 表达式条件为 true")
print (var)
var_2 = 0
if var_2:
print ("if_2 表达式条件为 true")
print (var_2)
print ("Over")
'''
out:
if_1 表达式条件为 true
3
Over
'''
if语句嵌套
在if语句嵌套中,可把 if-elif-else 结构放在另一个 if-elif-else 结构中。
if condition_1:
statement_block_1
if condition_2:
statement_block_2
elif condition_3:
statement_block_3
else:
statement_block_0
elif condition_4:
statement_block_4
else:
statement_block_5
实例:
num=eval(input("请输入数字:"))
if num%3==0:
if num%5==0:
print ("你输入的数字可以整除 3 和 5")
else:
print ("你输入的数字可以整除 3,但不能整除 5")
else:
if num%5==0:
print ("你输入的数字可以整除 5,但不能整除 3")
else:
print ("你输入的数字不能整除 3 和 5")
'''
in:
请输入数字:9
out:
你输入的数字可以整除 3,但不能整除 5
'''
循环语句
while语句
while循环语句的一般形式为:
while condition:
statements
……
实例:
n = 100
sum = 0
counter = 1
while counter <= n:
sum = sum + counter
counter += 1
print("1 到 %d 之和为: %d" % (n,sum))
'''
out:
1 到 100 之和为: 5050
'''
可以通过设置条件表达式永远不为 false 来实现无限循环
for语句
Python for 循环可以遍历任何可选代对象,如一个列表或者一个字符串。
for循环的一般格式如下:
for <variable> in <sequence>:
statements
else:
statements
实例:
languages = ["C", "C++", "Perl", "Python"]
for x in languages:
print (x)
'''
out:
C
C++
Perl
Python
'''
break 语句
break 语句用于跳出当前循环体
continue语句用于提前结束本次循环,进入下一次循环
异常处理:
异常
Python程序可能会出现语法正确的,但是在运行的时候发生错误。
一般情况下,很多异常都不会被程序处理,然后以错误信息的形式展现在这里:
>>> 10 * (1 / 0 ) #0不能作为除数,触发异常
回溯(最新最后调用):
文件“<标准输入>” ,线1 , 在?
ZeroDivisionError:被零除
>>> 4 + spam * 3 #spam未定义,触发异常
Traceback (最近一次调用为last ):
文件“ <stdin>” ,第1行, 在?
NameError:名字“垃圾邮件” 是 不是定义
>>> '2' + 2 #INT不能与STR相加,触发异常
回溯(最新最后调用):
文件“<标准输入>” ,线1 , 在 <模块>
类型错误:只能串连STR (未 "int" )到str
异常通常以不同的类型出现,这些类型也都作为信息的一部分打印输出。eg:例子中的类型有ZeroDivisionError、NameError和TypeError。
错误信息的前面部分显示了异常发生的一部分,并以调用栈的形式显示具体信息
异常处理
异常捕捉
异常捕捉使用try-except语句:
try:
demo1 #执行代码
except:
demo2 #发生异常时执行的代码
try语句按照如下方式工作;
- 首先,执行try子句(在关键字try和关键字之间除外的语句)。
- 如果没有异常发生,除了子句,忽略,请尝试子句执行后结束。
- 如果异常的类型和除了之后的名称相符,那么对应的除外,而子句将被执行。
- 如果一个异常没有与任何的,除了匹配,那么这个异常将会传递给上层的try中。
一个try语句可能包含多个except子句,分别来处理不同的特定的异常。
处理程序将只针对对应的尝试子句中的异常进行处理,而不是其他的try的处理程序中的异常。
一个除外子句可以同时处理多个异常,这些异常将被放在一个括号里成为一个元组。
try-finally语句
try-finally语句无论是否发生异常都会执行最后的finally后的代码
try:
demo1 #执行代码
exceot:
demo2 #发生异常时执行的代码
else:
demo3 #没有发生异常时执行的代码
finally:
demo4 #不管是否发生异常都会执行的代码
实例:
try:
runoob()
except AssertionError as error:
print(error)
else:
try:
with open('file.log') as file:
read_data = file.read()
except FileNotFoundError as fnf_error:
print(fnf_error)
finally:
print('无论异常是否发生都会执行。')