Python走进数的世界

#指数运算
result = 3 * 3 * 3 * 3 * 3
print("result =", result)

result = 3 ** 5
print("result =", result)

#运算符优先级
print("1 + 2 * 3 + 4 =", 1 + 2 * 3 + 4)
print("(1 + 2) * (3 + 4) =", (1 + 2) * (3 + 4))

# 整形和浮点型,用type()方法查看数值类型
a = 1
print("type(a) =", type(a))

b = 2.0
print("type(b) =", type(b))

#四大基本运算
print("2 + 3 =", 2 + 3)
print("2 - 3 =", 2 - 3)
print("2 * 3 =", 2 * 3)
print("2 / 3 =", 2 / 3)



#除数和余数
result = 6 / 2
print("result =", result)

result = 6 % 2
print("result =", result)

result = 7 / 2
print("result =", result)

result = 7 % 2
print("result =", result)

result = 7 // 2     #向下取整
print("result =", result)

result = 7 // -2
print("result =", result)

import math #math.floor()
result = math.floor(7 / 2)
print("result =", result)

result = math.floor(7 / -2)
print("result =", result)

result = math.trunc(7 / 2)      #math.trunc()
print("result =", result)

result = math.trunc(7 / -2)
print("result =", result)


#位操作
x = 1
print("x << 2 =", x << 2)    #0001 0100

y = 1
print("y | 2 =", y | 2)     #0001 | 0010 = 0011

z = 1
print("z & 1 =", z & 1)     #0001 & 0001 = 0001

#进制
a = 64
print("二进制a =", bin(a))

print("八进制a =", oct(a))

print("十六进制a =", hex(a))


#浮点数运算缺乏精确性
result = 0.1 + 0.1 + 0.1 - 0.3
print("result =", result)       #result = 5.551115123125783e-17

#小数对象
import decimal
result = decimal.Decimal('0.1') + \
         decimal.Decimal('0.1') + \
         decimal.Decimal('0.1') - \
         decimal.Decimal('0.3')
print("result =", result)

result = decimal.Decimal(1) / decimal.Decimal(7)
print("result =", result)

decimal.getcontext().prec = 4

result = decimal.Decimal(1) / decimal.Decimal(7)
print("result =", result)

#上下文管理器,重新设置临时精度,语句退出后,恢复精度
with decimal.localcontext() as ctx:
    ctx.prec = 2
    print(decimal.Decimal(1) / decimal.Decimal(3))

print(decimal.Decimal(1) / decimal.Decimal(3))

猜你喜欢

转载自www.cnblogs.com/yan1314/p/9097714.html