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)

python 小数递增 python小数加法_java


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)

python 小数递增 python小数加法_字符串_02

注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)

python 小数递增 python小数加法_字符串_03


3.同时给多个变量赋同一个值

#java num1,num2,num3 = 22   java是用逗号分割的
num1 = num2 = num3 = 22
print(num1, num2, num3)

python 小数递增 python小数加法_逻辑运算符_04

比较运算符:结果: True False

print(3 > 2)
print(3 > True)  # True可以知道转型为1
print(ord(","))  # ascii码
print("," > "b")  # 两个字符串只会比较第一位
print("1" < "2")
print("11" < "2")
print("abc" < "aba")

python 小数递增 python小数加法_字符串_05

逻辑运算符

Java: &(逻辑与) | ! &&(短路与)
Python: and(与) (or)或 not(非)

print((3 > 2) and (2 < 3))

python 小数递增 python小数加法_java_06


#特殊用法

#两个整数之间也可以用逻辑运算符:

#and 只要有一个值为0,则结果为0,否则结果为最后一个非0的数字

#or 只有所有的值为0结果才为0,否则结果为第一个非0数字

print(3 and 5)
print(0 or 0)

python 小数递增 python小数加法_逻辑运算符_07

位运算符:将左右两边的数字转成二进制

&:按位与 都为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

python 小数递增 python小数加法_逻辑运算符_08

三元运算符

java格式:条件?结果1 :结果2
Python:结果1 if 条件 else 结果2

a = 3
b = 2
print("b大") if a < b else print("a大")

python 小数递增 python小数加法_字符串_09

条件运算符:if elif else

python的条件运算与java不一样,java是使用{结果},python是使用:并且通过代码的缩进为结果体

a = 3
b = 2
if a > b:
    print("a大")
else:
    print("b大")

python 小数递增 python小数加法_java_10

age = int(input("请输入您的年龄:"))
if age < 3:
    print("宝宝")
# elif (age >= 3) and (age < 18):
elif 3 <= age < 18:
    print("少年")
elif age >= 18:
    print("青年")

python 小数递增 python小数加法_java_11

循环语句 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")

python 小数递增 python小数加法_java_12

i = 1
while i <= 10:
    if i == 5:
        i = i + 1
        continue
    print(f"i={i}")
    i = i + 1

else:  # 循环正常执行完毕,才会执行else中的内容,强行中止的不算
    print("ok")

python 小数递增 python小数加法_java_13

for i in range(10):
    print(i)
else:
    print("ok")

python 小数递增 python小数加法_python 小数递增_14

随机数

#导入模块:import random
设置数字起始与结束,随机输出

num = random.randint(0, 2)  
print(num)

python 小数递增 python小数加法_python 小数递增_15