2 运算符&进制转换

2 运算符&进制转换

1 类型判断

1.1 isinstance用法:

isinstance(obj ,typename)
功能:判断obj是否是指定类型,是返回True,否返回False
参数: obj 是你要判断的变量或数值; typename 是指定数据类型,可以是int,float,str等。也可是一个类型的元组,例如:(int,float)

示例:
  age = 10
  name = 'hello'	
  print(isinstance(age,int))
  print(isinstance(name,(str,int))
  只要name是str或int的一种就返回True
  
  if isinstance(age,int):
      print('是')
  else:
      print('否')

1.2 type 和 isinstance的区别

type判断基本类型是没问题的,但无法判断子类对象是父类的一种
isinstance可以判断子类对象是父类的一种

2. 运算符和表达式

2.1 算术运算符

a = 20;b = 10

运算符说明示例
-负号,取原数的相反数a = 10 print(-a) #-10
+ - * /加减乘除,同数学上一样a + b = 30 a - b = 10 a * b = 200 a / b = 2
%模运算,即求 a整除以b的余数a % 10 = 0
//整除a // b = 2
**对运算符进行指数(幂)计算a ** b 表示20的10次方

2.2 数学函数

函数名函数的说明示例
abs取绝对值abs(-10)
pow(x,y)x的y次方pow(10,2)求10的平方
round(x,[n])浮点数的4舍5入, n代表保留小数的位数round(3.456)
max()求给定参数的最大值max(21,43,65,75,86,32,3,45)
min()求给定参数的最小值min(21,43,65,75,86,32,3,45)
math.ceil()需要导入import math库 向上取整math.ceil(18.1) #19
math.floor()需要导入import math库 向下取整math.floor(18.1) #18
math.sqrt需要导入import math库 求平方根math.sqrt(100)

2.3 随机函数

获取随机数,需要引入random库。import random

函数名函数说明
random.randrange(start,stop,step)start 指定范围的起始值 包含本身,默认是0;stop 指定范围的结束值 不包含本身; step 步长,默认步长是1。该函数返回一个整数
random.randint(start,end)返回[start end]之间的一个随机整数,start必须小于end
random.random()返回一个[0.0,1.0)之间的随机小数

2.4 赋值运算符

a = 5; b = 10; c = 20

运算符说明示例
=简单赋值, 将b+c的结果赋给aa = b +c
+=a += b等价于 a = a +ba = 15
-=a -= b等价于 a = a - ba = -5
*=a *= b等价于 a = a * ba = 50
/=a /= b 等价于a = a / ba = 0.5
%=a %= b等价于a = a % ba = 5
//=a //= b等价于 a = a // ba = 0
**=a **= b等价于a = a ** ba = 2
注意:
- 赋值运算符左边必须是变量
- 从右向左算
- 没有赋值表达式
- 所有赋值运算符优先级相同,赋值运算符优先级非常低,仅高于成员运算符和身份运算符、逻辑运算符
- 注意在复合赋值中

a = 2
b = 3
a *= b + 2  # 等价于 a = a * (b + 2)
print(a)  # a = 10

2.5 关系运算

关系运算就是比较运算,如果表达式成立,返回True,否则返回False。关系运算的结果是布尔值。

运算符示例说明
==a == ba和b值相等,结果是True,a和b值不相等结果为False
!=a != ba不等于b 结果为True,否则结果为True
>a > ba大于b结果为True,否则为False
>=a >= ba大于等于b结果为True,否则为False
<a < ba小于b结果为True,否则为False
<=a <= ba小于等于b结果为True,否则为False

2.6 逻辑运算

aba and b
任意值b的值
任意值a的值
aba or b
任意值a的值
任意值b的值
anot a
False
True

2.7 身份运算符

is:  判断两个标识符是否引用自同一个实体【对象】,比较的是两个对象的id是否一样,如果相同为真,否则为假
is not:  判断两个标识符是不是引用自不同的实体【对象】如果两个对象的id不同结果为真,否则为假
id(): 函数获取实体的id(地址)

注意:is和==的区别
- is用于判断两个变量引用实体是否为同一个【id】
- ==用于判断两个变量的值是否相同,但id不一定相同

2.8 成员运算符

主要应用在序列中
in:如果在指定的序列中找到指定的值,则返回True,否则返回False
not in:如果在指定的序列中未找到指定的值,则返回True,否则返回False

3. 二进制 + 八进制 + 十进制 + 十六进制

0b  表示二进制      例如 0b101
0o  表示八进制      例如 0o7521
0x  表示十六进制  例如  0x9f2d

Python 内置的函数:
二进制 0b    bin()   将十进制---》二进制
八进制 0o    oct()   将十进制 ---》 八进制
十进制   int()       转十进制
十六进制 0x    hex()  将十进制----》十六进制

3.1 十进制转二进制

a = 15
print(bin(a))
二进制  0000 1111

a = -15
print(bin(a))
取反         1111 0000
末尾在加1    1111 0001

3.2 二进制转十进制

a = 0b1111
print(int(a))   显示结果 15

3.3 八进制转二进制 十进制

八进制转二进制
0o6430
6			4		    3		    0	
8^3			8^2			8^1			8^0
101			100			011			000
八进制转十进制: 6*8^3+4*8^2+3*8^1+0*8^1
八进制转二机制:101100011000

3.3 十六进制

0 ~ 9 :表示 数值0 ~ 9
a ~ f : 表示 数值10 ~ 16

0x9ab16
9			a			b			1			6
16^4	  16^3         16^2        16^1        16^0
1001      1010         1011        0001        0110
十六进制转十进制:6*16^4+10*16^3+11*16^2+1*16^1+6*16^0
十六进制转二进制:10011010101100010110
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值