目录
1.布尔值
虽然整型、浮点型和字符串数据类型有无数种可能的值,但“布尔”数据类型只有两种值:True和False。它们总是以大写字母T或F开头,后面字母小写,两边没有引号。
布尔值可以用在表达式中,也可以保存在变量中。但如果大小写不正确,或者试图用True或False作为变量名,python就会报错哦!
2.比较操作符
比较操作符比较两个值,求值为一个布尔值。
操作符 | 含义 |
---|---|
== | 等于 |
!= | 不等于 |
< | 小于 |
> | 大于 |
<= | 小于等于 |
>= | 大于等于 |
Talk is cheap, let’s python it!
print(1314 == 1314)
True
print(419 < 520)
True
print('Love' == 'love')
False
聪明的你可能已经发现,==操作符(等号)有两个等号,而=操作符(赋值)只有一个等号。这两个操作符很容易混淆哦,只要记住:
- ==操作符(等号)问两个值是否彼此相同;
- =操作符(赋值)将右边的值放到左边的变量中。
3.布尔操作符
三个布尔操作符(and、or和not)用于比较布尔值。
布尔操作符真值表
表达式 | 求值为 |
---|---|
True and True | True |
True and False | False |
False and True | False |
False and False | False |
True or True | True |
True or False | True |
False or True | True |
False or False | False |
not True | False |
not False | True |
4.混合布尔和比较操作符
print((419 < 520) and (1314 == 1314))
True
print(('Love' == 'love') and (1314 == 1314))
和算数操作符一样,布尔操作符也有操作顺序:在所有算数和比较操作符求值之后,python先求值not操作符,然后是and操作符,最后是or操作符。
5.控制流的元素
控制流语句的开始部分通常是“条件”,接下来是一个代码块。
条件
前面所学的布尔表达式可以看成是条件。条件总是求值为一个布尔值,True或False。控制流根据条件是True或False,来决定做什么。几乎所有的控制流语句都使用条件。
代码块
一些代码行可以作为一组,放在“代码块”中。可以根据代码行的缩进,知道代码块的开始和结束。代码块有3条规则:
- 缩进增加时,代码块开始;
- 代码块可以包含其他代码块;
- 缩进减少为零,或减少为外面包围代码块的缩进,代码块就结束了。
if name == 'Doraemon':
print('Hello Doraemon!')
if password == 'number':
print('Access granted.')
代码块开始于代码行print(‘Hello Doraemon!’),并包含后面所有的行。
6.控制流语句
if-elif-else语句
首先,总是只有一个if语句,所有需要的elif语句都应跟在if语句之后。其次,如果希望确保至少一条子句被执行,在最后加上else子句。
while语句
利用while语句,可以让一个代码块一遍又一遍的执行。while语句和if语句的不同之处在于:if语句结束时,程序继续执行if语句之后的语句;但在while语句结束时,程序执行跳回到while语句开始处。while子句常被称为while循环。
name = ''
while name != 'Doraemon':
print('Please type your name:')
name = input()
print('Thank you!')
break语句
break语句:跳出while循环子句,用于while和for循环内部。
while的两种用法:
①while+条件+子句
②while True+if+break+子句
只要能达到目的,用哪种方法都可以,并无好坏之分。由于while True是无限循环,因此一般会配合if…break一起使用。
name = ''
while True:
print('Please type your name:')
name = input()
if name == 'Doraemon':
break #if条件为真,则跳出循环
print('Thank you!')
continue语句
continue语句:跳回到循环开始处,重新对循环条件求值。用于while和for循环循环内部。
while True:
print('Please type your name:')
name = input()
if name != 'Doraemon':
continue #if条件为真,则跳回到循环开始处,if...else语句同样可以实现
print('Hello,Doraemon,what is the password?')
password = input()
if password == 'number'
break
print('Access granted.')
如果你运行了一个有缺陷的程序,导致陷入了一个无限循环,可以按Ctrl-C立即停止。
for循环和range()函数
在条件为True时,while循环就会继续循环。如果你想让一个代码块执行固定次数,可以通过for循环和range()函数来实现。
类真和类假的值
在用于条件时,0、0.0和’’(空字符串)被认为是False,其他值被认为是True。
例如:如果name = ‘’,那么not name的返回值为True,while not name等价于while True
for循环和range()函数
在代码中,for 语句看起来像for in range(5)这样,总是包含以下部分:
- for关键字
- 一个变量名
- in关键字
- 调用range()方法,最多传入三个参数
- 冒号
- 从下一行开始,缩进的代码块(称为for子句)
for i in range(5):
print(i)
0
1
2
3
4
运行这个程序时,他将打印5次i的值,然后离开for循环。
也可以在循环中使用continue语句。continue语句让for循环变量继续下一个值,就像程序执行已经达到循环的末尾。实际上,只能在while和for循环内部使用continue和break语句,如果试图在别处使用这些语句,python将报错。
while循环可以做和for循环同样的事,只是for循环更简洁。
i = 0
while i < 5:
print(i)
i=i+1
0
1
2
3
4
range()的开始、停止和步长参数
- 当range()的参数只有一个整数n时,调用range()将从0逐一增至n-1;
for i in range(5):
print(i)
0
1
2
3
4
- 当range()有两个参数x和y时,调用range()将从x逐一递增至y-1;
for i in range(2,5):
print(i)
2
3
4
- 当range()有三个参数x、y和a时,前两个参数分别是起始值和终止值,第三个参数是步长。步长是每次迭代后循环变量增加的值。
for i in range(0,10,2):
print(i)
0
2
4
6
8
在为for循环生成序列数据方面,range()函数很灵活,甚至可以用负数作为步长参数,让循环技术逐渐减少,而不是增加。
for i in range(10,-2,-2):
print(i)
10
8
6
4
2
0
7.导入模块
使用import关键字可以导入标准库中的模块,模块中有不同的函数可供使用。导入模块的语句一般为import + 模块名称,若有多个模块名称,则用逗号分隔。
导入模块后,我们就可以使用该模块中很酷的函数。比如random随机数模块中的random.randint()函数,该函数求值为传递给它的两个整数之间的一个随机整数(包含上下限)。
import random
for i in range(5):
print(random.randint(1,5))
5
1
5
2
1
因为randint()属于random模块,因此必须在函数名称前面加上random,告诉python在random模块中寻找这个函数。
from import语句
import 语句的另一种形式包括from关键字,之后是模块名称,import关键字和一个星号,如from random import *
使用这种形式的import语句,调用random模块中的函数时不需要random.前缀。但是,完整的名称会让代码更可读,所以最好使用普通形式的import语句。
8.用sys.exit()提前结束程序
通过调用sys.exit()函数,可以让程序终止或退出。因为这个函数在sys模块中,因此需先导入才能使用。
import sys
while True:
print('Type exit to exit.')
response = input()
if response == 'exit':
sys.exit() #if条件为真,则程序终止
print('Thank you!')
第二章知识点有点多,慢慢看哟~