1 python中的保留字
保留字也叫做关键字,不能把它们用在任何标识符名称,可以使用以下命令来查看python的保留字
1 import keyword 2 print(keyword.kwlist)
2 普通数据类型
int、float、complex
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 # int为整数类型,可以将浮点型强制转化成整形 2 a = 10.0 3 print(type(a)) 4 a = int(a) 5 print(type(a)) 6 7 # float为浮点型,可以将整形强制转化成浮点型 8 a = 10 9 print(type(a)) 10 a = float(a) 11 print(type(a)) 12 13 # complex为复数类型,在以后的编程生涯中很少用到 14 a = 10 + 5j 15 print(a.real) # 返回复数的实部 16 print(a.imag) # 返回复数的虚部
bool
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 # bool数据类型只有两种状态False和True,常用于判断表达式的状态 2 a = False 3 print(type(a)) 4 b = True 5 print(type(a)) 6 if a: 7 print('a is True') 8 else: 9 print('a is False')
str、list、tuple、sets、dict在以后的博客中总结
3 运算符
3.1 算术运算符
算术运算符包括加减乘除,乘方和取余
运算符 | 含义 | 举例 |
+ 加 | 两个对象相加 | 1 + 2 = 3 |
- 减 | 得到负数,或一个数减去另一个数 | 3 - 2 = 1 |
* 乘 | 两个数相乘或返回一个被重复若干次的字符串 | 2 * 3 = 6 |
/ 除 | 两个数相除,得到一个浮点数 | 4 / 2 = 2.0 |
** 乘方 | x**y 表示返回x的y次幂 | 2 ** 3 = 8 |
% 取余 | 返回除法的余数 | 10 % 3 = 1 |
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 x = 4 2 y = 5 3 z = 10 4 # 加法运算 5 a = x + y 6 print('a:%d' % a) 7 8 # 减法计算 9 a = y - x 10 print('a:%d' % a) 11 12 # 乘法计算 13 a = x * y 14 print('a:%d' % a) 15 16 # 除法计算 17 a = z / y 18 print('a:%d' % a) 19 20 # 乘方计算 21 a = x ** 2 22 print('a:%d' % a) 23 24 # 取余计算 25 a = z % x 26 print('a:%d' % a)
3.2 比较运算符
比较远算符如下表所示
比较运算符 | 含义 |
== 等于 | 比较两个数是否相等,返回布尔值 |
!= 不等于 | 比较两个数是否不相等,返回布尔值 |
> 大于 | 比较两个数的大小关系,左边是否大于右边,返回布尔值 |
< 小于 | 比较两个数的大小关系,左边是否小于右边,返回布尔值 |
>= 大于等于 | 比较两个数的大小关系,左边是否大于等于右边,返回布尔值 |
<=小于等于 | 比较两个数的大小关系,左边是否小于等于右边,返回布尔值 |
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 x = 15 2 y = 6 3 # 判断变量 x和y是否相等 4 if x == y: 5 print("x 等于 y") 6 else: 7 print("x 不等于 y") 8 # 判断变量 x和y是否不相等 9 if x != y: 10 print("x 不等于 y") 11 else: 12 print("x 等于 y") 13 # 判断变量 x是否小于y 14 if x < y: 15 print("x 小于 y") 16 else: 17 print("x 大于等于 y") 18 # 判断变量 x是否大于y 19 if x > y: 20 print(" x 大于 y") 21 else: 22 print(" x 小于等于 y") 23 # 修改变量 x 和 y 的值 24 x = 6 25 y = 18 26 # 判断变量 x是否小于等于y 27 if x <= y: 28 print(" x小于等于 y") 29 else: 30 print(" x 大于 y") 31 # 判断变量 x是否大于等于y 32 if y >= x: 33 print(" y 大于等于 x") 34 else: 35 print(" y 小于 x")
3.3 赋值运算符
赋值运算符 | 含义 | 举例 |
= | 简单的赋值运算符 | c = 10, 将整数10赋值给变量a |
+= | 加法赋值运算符 | a += 1,等价于a = a +1 |
-= | 减法赋值运算符 | a - = 1,等价于a = a - 1 |
*= | 乘法赋值运算符 | a * = 1,等价于a = a * 1 |
/= | 除法赋值运算符 | a / = 1,等价于a = a / 1 |
%= | 取模赋值运算符 | a % = 1,等价于a = a % 1 |
**= | 幂赋值运算符 | a ** = 1,等价于a = a ** 1 |
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 x = 24 2 y = 8 3 z = 6 4 #简单的赋值运算 5 z = x + y 6 print ("z 的值为:", z) 7 #加法赋值运算 8 z += x 9 print ("z 的值为:", z) 10 #乘法赋值运算 11 z *= x 12 print ("z 的值为:", z) 13 #除法赋值运算 14 z /= x 15 print ("z 的值为:", z) 16 z /= x 17 print("z 的值为:", z) 18 # 取模赋值运算 19 z = 12 20 z %= x 21 print("z 的值为:", z) 22 # 幂赋值运算 23 x = 3 24 z **= x 25 print("z 的值为:", z) 26 # 取整除赋值运算 27 z //= x 28 print("z的值为:", z)
3.4 逻辑运算符
逻辑运算符 | 含义 | 举例 |
and | x and y 表示如果x为False,它返回False,否则它返回y的计算值(x和y都是True则它返回True,有一个False,则它返回False) | 10 and 15 返回15 |
or | x or y 表示如果x 为Ture,它返回True,否则它返回y的计算值(x和y都是False则它返回False,有一个是True,则它返回True) | 10 or 15 返回15 |
not | not x 表示如果x为False则它返回True,否则它返回False | not 10 返回False |
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 a = 10 2 b = 15 3 # 布尔“与”运算 4 if a and b: 5 print("变量 a 和 b 都为 true") 6 else: 7 print("变量 a 和 b 有一个不为 true") 8 # 布尔“或”运算 9 if a or b: 10 print("变量 a 和 b 都为 true,或其中一个变量为 true") 11 else: 12 print("变量 a 和 b 都不为 true") 13 # 修改变量 a 的值 14 a = 0 15 if a and b: 16 print("变量 a 和 b 都为 true") 17 else: 18 print("变量 a 和 b 有一个不为 true") 19 if a or b: 20 print("变量 a 和 b 都为 true,或其中一个变量为 true") 21 else: 22 print("变量 a 和 b 都不为 true") 23 # 布尔“非”运算 24 if not a and b: 25 print("变量 a 和 b 都为 false,或其中一个变量为 false") 26 else: 27 print("变量 a 和 b 都为 true")
3.5 身份运算符
python支持的身份的运算符有is和not is。其中is是判断两个标识符是不是引用自同一个对象,not is是判断两个标识符是不是引用自两个不同对象
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 a ='张笑笑' 2 b = '刘萍' 3 #使用is身份运算符 4 if a is b: 5 print ("a和b有相同的标识") 6 else: 7 print ("a和b没有相同的标识") 8 #使用is not身份运算符 9 if a is not b: 10 print ("a和b没有相同的标识") 11 else: 12 print ("a和b有相同的标识") 13 # 修改变量a的值 14 a = '刘萍' 15 if a is b: 16 print ("修改后的a和b有相同的标识") 17 else: 18 print ("修改后的a和b仍然没有相同的标识")
3.6 成员运算符
python支持成员运算符,测试实例中包含了一系列成员,包括字符串、列表或元组。成员运算符包括in和not in, x in y表示如果x在y序列中返回true; x not in y表示如果x不在y序列中返回true。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 a ='张笑笑' 2 b = '刘萍' 3 students = ['王平', '张小平', '李晓莉', '张雁峰', '韩恩丽' ]; 4 # 使用in成员运算符 5 if a in students: 6 print ("变量a在给定的列表students中") 7 else: 8 print ("变量a不在给定的列表students中") 9 # 使用not in成员运算符 10 if b not in students: 11 print ("变量b不在给定的列表students中") 12 else: 13 print ("变量b在给定的列表students中") 14 # 修改变量a的值 15 a = '张小平' 16 if a in students: 17 print ("变量a在给定的列表students中") 18 else: 19 print ("变量a不在给定的列表students中")
4 条件判断语句
4.1 if语句
if语句的格式如下:
1 if 表达式1: 2 语句1 3 elif 表达式2: 4 语句2 5 ... 6 else: 7 语句n
注:
1 每个条件后面要使用冒号,表示接下来是满足条件后要执行的语句块 2 使用缩进来划分语句块,相同缩进数的语句再一起组成一个语句块 3 再python中没有switch...case语句
下面我们用if语句实现一个简单的用户登陆认证
1 your_username = 'wen' 2 your_password = '123123' 3 username = input('请输入你的用户名:').strip() # 用户输入字符串,并将输入的字符串中的空格删除 4 password = input('请输入你的密码').strip() 5 if username == your_username and password == your_password: 6 print('welcome wen!') 7 else: 8 print('你的用户名或密码错误')
4.2 if的嵌套
if嵌套的格式如下:
1 if 表达式1: 2 语句 3 if 表达式2: 4 语句 5 elif 表达式3: 6 语句 7 else: 8 语句 9 elif 表达式2: 10 语句 11 else: 12 语句
下面用if嵌套实现一个简单的100以内的加法器
1 num1 = input('请输入一个数字:') 2 num2 = input('请输入另一个数字:') 3 if num1.isdigit() and num2.isdigit(): # 判断用户输入的两个字符串中是不是数字 4 num1_int = int(num1) 5 num2_int = int(num2) 6 if num1_int <= 100 and num2_int <= 100: # 判断用户输入的两个数字是不是再100以内 7 print('%d + %d = %d' % (num1_int, num2_int, num1_int + num2_int)) 8 else: 9 print('你输入的数超过允许的范围') 10 else: 11 print('你输入的至少有一个不是数字')
5 循环控制语句
5.1 while语句
其实while语句是循环语句,也是条件判断语句,while的语句语法格式如下:
1 while 判断条件: 2 语句
下面通过while语句来计算1~100的总和
1 n = 100 2 sum = 0 3 count = 1 4 while count <= n: 5 sum += count 6 count += 1 7 print('1 到 %d 的和为:%d' % (n, sum))
while和else的配合使用(同样使用与for循环)
当while循环正常结束时,会执行while之后的else语句,当在while循环中有break语句将while意外停止跳出循环,则while后面的else就不会执行
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 n = 10 2 sum = 0 3 count = 1 4 while count <= n: 5 sum += count 6 count += 1 7 print(sum) 8 # if sum >= 40: 9 # break 10 else: 11 print('hahaha') 12 # 输出: 13 # 1 14 # 3 15 # 6 16 # 10 17 # 15 18 # 21 19 # 28 20 # 36 21 # 45 22 # 55 23 # hahaha
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 n = 10 2 sum = 0 3 count = 1 4 while count <= n: 5 sum += count 6 count += 1 7 print(sum) 8 if sum >= 40: 9 break 10 else: 11 print('hahaha') 12 # 1 13 # 3 14 # 6 15 # 10 16 # 15 17 # 21 18 # 28 19 # 36 20 # 45
5.2 for语句
for语句通常由来给你部分组成:一个是条件控制部分;另一个是循环部分。for语句的语法格式如下:
for <variable> in <sequence>: 语句
下面是用for语句循环十次
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 for i in range(10): 2 print('loop: %d' % i) 3 # 输出: 4 # loop: 0 5 # loop: 1 6 # loop: 2 7 # loop: 3 8 # loop: 4 9 # loop: 5 10 # loop: 6 11 # loop: 7 12 # loop: 8 13 # loop: 9
5.3 continue和break
使用continue语句,python将跳过当前循环块中国的剩余语句,继续进行下一轮循环
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 for i in range(10): 2 if i == 5: # 当i为5时跳出本次的循环块,进入下一次循环 3 continue 4 print('loop: %d' % i) 5 6 # 输出: 7 # loop: 0 8 # loop: 1 9 # loop: 2 10 # loop: 3 11 # loop: 4 12 # loop: 6 13 # loop: 7 14 # loop: 8 15 # loop: 9
使用break语句,python将直接跳出循环
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 for i in range(10): 2 if i == 5: 3 break 4 print('loop: %d' % i) 5 6 # 输出: 7 # loop: 0 8 # loop: 1 9 # loop: 2 10 # loop: 3 11 # loop: 4