python基本运算符,while循环
- 算术运算符
- 赋值运算符
- 比较运算符:结果: True False
- 逻辑运算符
- 位运算符:将左右两边的数字转成二进制
- 三元运算符
- 条件运算符:if elif else
- 循环语句 while for
- 随机数
算术运算符
1.两个数值相加,是加法
2.两个字符串相加,就是拼接功能
from decimal import Decimal #导入模块
# print(4+5)
# print("a"+"b")
a=2.3
b=1.9 #由于是将小数转换为2进制的形式 导致精度丢失
print(a+b)
c=4.2
print((a+b)==c)
print("-----Decimal转换----")
aa = Decimal("2.3")
bb = Decimal("1.9")
print(aa+bb)
cc = Decimal("4.2")
print( (aa+bb) == cc) # 精度丢失问题
注:精度丢失:数值的运算最终是转成二进制的形式,但是小数不好转成二进制
注2:特殊情况:int类型和bool类型之间自动转换 True 1 False 0
print(int(False))
print(True - False)
3.* / % **【几次幂】 // 【求整】
print("hello"*2) #字符串也能做乘法
print(3 ** 3) # 3*3*3
print(25 ** 0.5) #开跟 开平方
print(3 / 2) #跟java不同,java是取整
print(3 // 2) #求整
print(10 % 3) # 磨
print("-----bolean类型----")
print(True)
print(int(True)) #转换为int类型 true为1 false为0
print(True - False) #自动转型了 1-0
print(2 ** 2 * 3)
print(3 * 2 ** 2)
注3:优先级问题
()高于**高于 * / // %高于 + -
print(2 ** 2 * 3)
print(3 * 2 ** 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
.相比java 多了** //
a = 2
a += 2
a -= 2
a *= 2
a **= 2
a /= 2
a //= 2
a %= 2
print(a)
2.同时给多个变量进行赋多个值
name, age, gender = "红红", 99, "女"
print(name, age, gender)
3.同时给多个变量赋同一个值
#java num1,num2,num3 = 22 java是用逗号分割的
num1 = num2 = num3 = 22
print(num1, num2, num3)
比较运算符:结果: True False
print(3 > 2)
print(3 > True) # True可以知道转型为1
print(ord(",")) # ascii码
print("," > "b") # 两个字符串只会比较第一位
print("1" < "2")
print("11" < "2")
print("abc" < "aba")
逻辑运算符
Java: &(逻辑与) | ! &&(短路与)
Python: and(与) (or)或 not(非)
print((3 > 2) and (2 < 3))
#特殊用法
#两个整数之间也可以用逻辑运算符:
#and 只要有一个值为0,则结果为0,否则结果为最后一个非0的数字
#or 只有所有的值为0结果才为0,否则结果为第一个非0数字
print(3 and 5)
print(0 or 0)
位运算符:将左右两边的数字转成二进制
&:按位与 都为1才为1
|:按位或 一个为1就为1
^:按位异或 不一样就为1
print(3 & 2) # 1&1=1 1&0=0 0&1=0 0&0=0
print(3 | 2) # 1|1=1 1|0=1 0|1=1 0|0=0
print(3 ^ 2) # 1^1=1 1^0=0 0^1=0 0^0=1
三元运算符
java格式:条件?结果1 :结果2
Python:结果1 if 条件 else 结果2
a = 3
b = 2
print("b大") if a < b else print("a大")
条件运算符:if elif else
python的条件运算与java不一样,java是使用{结果},python是使用:并且通过代码的缩进为结果体
a = 3
b = 2
if a > b:
print("a大")
else:
print("b大")
age = int(input("请输入您的年龄:"))
if age < 3:
print("宝宝")
# elif (age >= 3) and (age < 18):
elif 3 <= age < 18:
print("少年")
elif age >= 18:
print("青年")
循环语句 while for
终止循环:break continue
while 和 for循环都可以结合else使用
i = 1
while i <= 10:
if i == 5:
i = i + 1
break
print(f"i={i}")
i = i + 1
else: # 循环正常执行完毕,才会执行else中的内容,强行中止的不算
print("ok")
i = 1
while i <= 10:
if i == 5:
i = i + 1
continue
print(f"i={i}")
i = i + 1
else: # 循环正常执行完毕,才会执行else中的内容,强行中止的不算
print("ok")
for i in range(10):
print(i)
else:
print("ok")
随机数
#导入模块:import random
设置数字起始与结束,随机输出
num = random.randint(0, 2)
print(num)