1 # -*- coding:utf-8 -*-
2
3 # 运算符
4 '''
5 1、算数运算:
6 +:加,数字之间可以加,字符串和字符串也可以加。
7 -:减,只有数字之间可以进行减法运算。
8 *:乘,数字之间可以相乘,字符串和数字也可以相乘。
9 /:相除,只有数字可以。
10 %:取余数,只有数字可以。
11 //:整除,只有数字可以。
12 **:
13 '''
14 print('jianghu'+ 'jiangxi')
15 print('jianghu'*4)
16 print(4 / 3)
17 print(6 % 5)
18 print(2 // 3)
19 print(4 // 2)
20 print(2**16)
21
22 '''
23 2、比较运算:
24 >:大于:支持数字和字符
25 <:小于:支持数字和字符
26 <=:小于等于
27 >=:大于等于
28 ==:等于
29 !=:不等于
30 <>:不等于
31
32 '''
33 s = 's'
34 j = 'j'
35 # 查看字符的Ascii码通过ord()函数
36 print(ord(s))
37 print(ord(j))
38 print(ord('1'))
39 print(s < j) #False
40
41 '''
42 3、赋值运算
43 =:简单的赋值
44 +=:加法赋值
45 -=:减法赋值
46 *=:乘法赋值
47 '''
48 a = 1
49 b = 2
50 a += 1
51 print(a)
52 a -= 1
53 print(a)
54 b *= 2
55 print(b)
56 '''
57 4、逻辑运算
58 and :x and y,如果x为True,则返回y,x为 False 则返回x。0就是fasle,其他值就是true,如果x和y都为bool类型,则两个同为真则返回真,只要有一个为false,则返回false。
59 or:x or y,如果x为True,则返回x,x为 False 则返回y。如果x和y都为bool类型,则只要有一个为false,则返回false,则只要有一个为true,则返回true。
60 not:真返回假,假返回真。
61
62 逻辑运算优先级:
63 () >not >and >or
64 '''
65 # x 和 y都是bool类型
66 # and
67 print(1 > 2 and 2 > 3) #False
68 print(1 < 2 and 3 > 2) #True
69 print(1 < 2 and 2 > 3) #False
70
71 # or
72 print(1 > 2 or 2 > 3) #False
73 print(1 > 2 or 3 > 2) #True
74 print(1 < 2 or 2 < 3) #True
75
76 #not
77 print(not(2 > 3)) #True
78 # 作业
79 '''
80 1,3>4 or 4<3 and 1==1
81 2,1 < 2 and 3 < 4 or 1>2
82 3,2 > 1 and 3 < 4 or 4 > 5 and 2 < 1
83 4,1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8
84 5,1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
85 6,not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6'''
86
87 print('-------------------作业----------------')
88 print(3>4 or 4<3 and 1==1) #False
89 print(1 < 2 and 3 < 4 or 1>2) #True
90 print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1) #True
91 print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8)#False
92 print(1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6) #False
93 print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)#False
94
95 print('---------x 和 y都是数字------------')
96 print(1 and 2) #x为真则返回y
97 print(0 and 1) #x为假则返回x(总结:遇到一个假则返回,否则一直判断下去,直到返回最后一个)
98 print(1 or 2) #x为真则返回x
99 print(0 or 3) #x为假则返回y(总结:遇到真则返回)
100
101 # 作业
102 print(1 or 12 or 199 or 200) #1
103 print(1 and 2 and 4 and 0 and 11 )#0
104 print(1 and 3 or 4 and 5) #3
105 print(0 or 4 and 3 or 2) #3
106 # 比较运算符优先级高于逻辑运算符 and or not,如果先是比较运算则结果为bool,先算出来是int则结果为int
107 print(1 > 2 and 2 or 4 and 5 < 4) #0 and 2 or 4 and 0 0 or 0 result = False
108 print(1 > 2 and 2 or 4 and 5 > 4) #True
109 print(3 < 1 or 2 and 4) #4
110 print(2 or 3 > 1 and 4) #2