目录
1.算术运算符:算术运算符包括:( +、- 、*、/、% )
2.赋值运算符:把等号右边的值赋给等号左边的变量,赋值运算包含( =、+=、-=、*=、**=、/=、//=、%= )
3.比较运算符,也被称为关系运算符,比较运算符是比较两个值之间的关系,结果为True或者False,比较运算符包含( >、>=、<、<=、==、!= )
5.位运算符:&(按位与)、|(按位或)、^(按位异或),位运算,左右两边是数字,是把数字转换成二进制再进行运算
一、运算符
1.算术运算符:算术运算符包括:( +、- 、*、/、% )
+ :如果两边是数字,则会进行相加计算;如果两边是字符串,则会进行字符串拼接
比如:
2+3:结果为5
"hello"+"world":结果为"hello world"
- :如果两边是数字,则会进行相减计算;特殊情况也可以和True/False进行计算,因为True的取值为1,False的取值为0
比如:
5-3:结果为2
5-True:结果为4
5-False:结果为5
* :如果两边为数字,则会进行相乘计算;如果将字符串和数字进行相乘,则会进行字符串复制;
比如:
3*2:结果为6
"hello"*2:结果为"hellohello"
** :幂运算
比如:
2**2:结果为4
3**2:结果为9
/ :如果两边为数字,则会进行相除计算;但是使用/可能会出现除不尽的情况
比如:
6/2:结果为3
10/3:结果为3.3333333333333335
// :整除,在除不尽的情况下,取整
比如:
10//3:结果为3
% :取模,就是求余数
比如:
10%3:结果为1
示例
# 1.算术运算符: +、-、*、/
n = (1 + 2 - 1) * 5 // 2
print(n) 结果为5
2.赋值运算符:把等号右边的值赋给等号左边的变量,赋值运算包含( =、+=、-=、*=、**=、/=、//=、%= )
比如:
a=5
a+=5 等价 a=a+5
a-=5 等价 a=a-5
a*=5 等价 a=a*5
a**=5 等价 a=a**5
a/=5 等价 a=a/5
a//=5 等价 a=a//5
a%=5 等价 a=a%5
示例
# 2.赋值运算符: =、+=、-=、*=、**=、/=、//=、%=
n = 5
n += 5
n -= 5
n *= 5
n **= 5
n /= 5
n //= 5
n %= 555
print(n) 结果为460
3.比较运算符,也被称为关系运算符,比较运算符是比较两个值之间的关系,结果为True或者False,比较运算符包含( >、>=、<、<=、==、!= )
两个整数之间的比较,就不在演示了,给大家演示一下比较运算符的特殊情况:
数字和布尔类型比较:
比如:3>True,结果为True
两个字符串进行比较,比较的是Unicode编码,通过函数ord('字符')可以获取字符相对应的Unicode编码
比如:
单个字符串比较:'a'>'b','1'>'2'
多个字符串比较:'ab'>'ac',先比较第一位,若前一位相等,则比较后一位。
示例
# 3.比较运算符 >、>=、<、<=、==、!=
# ord 将字母转换为与之对应的Ascll值
# True int类型值1 ,False int类型值为0
print(n > True < ord('A')) 结果为True
4.逻辑运算符,包含and(与)、or(或)、not(非)
口诀:
and(与):只要有一边为False,结果为False
or(或):只要有一边为True,结果为True
not(非):对结果进行取反
特殊情况,比如:
True and print('语句'),会执行后面的打印或者执行后面的表达式
示例
# 4.逻辑运算符 and、or、not
print(not (n > 444 and n < 500 ) or print('呵呵',end="")) 结果为'呵呵'
5.位运算符:&(按位与)、|(按位或)、^(按位异或),位运算,左右两边是数字,是把数字转换成二进制再进行运算
比如:
3&2:结果为2
3|2:结果为3
3^2:结果为1
示例
# 5.位运算符:二进制 &、|、^
# 0011 = 3
# 1010 = 10
print(3&10) # 0010 = 2 两边为一则为1
print(3|10) # 1011 = 11 一边为一则为1
print(3^10) # 1001 = 9 两边相反则为1
6.条件运算符(三目运算符,三元运算符)
语法:
语句1 if 条件表达式 else 语句2
如果条件表达式对,则执行语句1,否则执行语句2
比如:
print('a=的值比较大') if a>b else print('b的值比较大')
a if a>b else b
示例
# 6.三元运算符
# Java 条件?结果1:结果2
# Python 结果1 if 条件 else 结果2
print('YES' if n > 500 else 'NO') 结果为'NO'
二、分支语句
Python的分支语句有三种情况:
1.if语句
2.if-else语句
3.if-elif-else语句
1.if语句
语法格式:
if 表达式:
代码块
比如:
if 3>2:
print("正确")
2.if-else语句
语法格式:
if 表达式:
代码块
else:
代码块
比如:
if 3>2:
print("正确")
else:
print("错误")
3.if-elif-else语句
语法:
if 表达式:
代码块
elif 表达式:
代码块
elif 表达式:
代码块
else:
代码块
比如:
age=18
if age<3:
print("婴儿")
elif 3<=age<=12:
print("儿童")
elif 12<age<18:
print("少年")
else:
print("成年了")
示例
n = 11
if n > 0 and n < 2 :
print('VIP1')
elif 1 < n < 3 :
print('VIP2')
else :
print('VIP' , n) 结果为 'VIP 11'
三、循环
Python中的循环分为两种:
while和for循环,本篇文章重点讲解while,等后期学习了集合,再讲解for循环
while循环语法:
while 表达式:
代码块
比如:打印1-10
i=0
while i<=10:
print(i)
i+=1
break:跳出循环
continue:结束本次循环,继续下次循环
示例
while n > 1 :
print('YES' , n ,end=" ")
n-=1
print("\n") 结果为'YES 11 YES 10 YES 9 YES 8 YES 7 YES 6 YES 5 YES 4 YES 3 YES 2'
# 99乘法表
# while-99乘法表
i = 1
while i <= 9 :
j = 1
while j <= i :
print(i , "*" , j , "=" , i*j , end=" ")
j+=1
i+=1
print("\n")
# for-99乘法表
x = 1
for x in range(x,9+1) :
x1 = 1
for x1 in range(x1,x+1) :
print(x , "*" , x1 , "=" , x*x1 , end=" ")
x1+=1
x+=1
print("\n")
# break - continue
# 当i=x时,跳出循环
while i < 100 :
if i == x + 10 :
print('i =',i,"= x =",x)
break
else :
print('NO',end=" ")
i+=1
print()
# 当i为奇数时结束本次循环
for i in range(1,10+1) :
if i % 2 == 1 :
continue
print(i,end=" ")
i=i+1
print("\n")
# 打印菱形
rows = 5
#实心菱形
#菱形的上半部分
for x in range(1,rows+1) :
for x1 in range(1,rows-x + 1) :
print(" ",end="")
x1+=1
for x2 in range(2 * x - 1):
print("*",end="")
x2+=1
print()
x+=1
#菱形的下半部分
for x in range(1,rows+1) :
for x1 in range(rows-x ,rows) :
print(" ",end="")
x1+=1
for x2 in range(1,2 * (rows-x)):
print("*",end="")
x2+=1
print()
x+=1
#空心菱形
#菱形的上半部分
for x in range(rows):
for x1 in range(rows - x):
print(" ",end=""),
x1 += 1
for x2 in range(2 * x - 1):
if x2 == 0 or x2 == 2 * x - 2:
print("*",end=""),
else:
print(" ",end=""),
x2 += 1
print()
x += 1
#菱形的下半部分
for x in range(rows):
for x1 in range(x):
print(" ",end=""),
x1 += 1
for x2 in range(2 * (rows - x) - 1):
if x2 == 0 or x2 == 2 * (rows - x) - 2:
print("*",end=""),
else:
print(" ",end=""),
x2 += 1
print()
x += 1
print()