Python运算符的转换

目录

一、基本数据类型的转换

二、运算符

2.1 算术运算符

2.2 赋值运算符(优先级最低)

2.3 比较运算符

2.4 逻辑运算符(not>and>or)

2.5 成员运算符

2.6 运算符优先级


一、基本数据类型的转换

数据类型的转换有两种形式:自动转换;强制转换

 自动转换 bool
 True(1) False(0)
 >>> 1 + True
 2
 >>> 1+False
 1
 ​
 # 强制转换
 字符串的转换
 str()   #将其他数据类型转变为字符串
 >>> age = 25
 >>> type(age)
 <class 'int'>
 >>> str(age)
 '25'
 >>> res = str(age)
 >>> type(res)
 <class 'str'>
 >>> res
 '25'
 转换成整型
 int()       #只有与整型类似的数据类型才可以进行转换
 >>> str1 = '25'
 >>> type(str1)
 <class 'str'>
 >>> res = int(str1)
 >>> type(res)
 <class 'int'>
 >>> res
 25
 转换浮点型
 float() #只有与浮点型类似的数据类型才可以进行转换
 >>> str1 = '25.5'
 >>> res = float(str1)
 >>> type(res)
 <class 'float'>
 >>> age = 25
 >>> res = float(age)
 >>> type(res)
 <class 'float'>
 >>> res
 25.0
 list()  #转换成列表
 tuple() #转换成元组
 转成bool
 bool()  # 得到的结果是True、False
 # 结果为False的情况:空字符串,数字0/0.0;当数据类型为空时,得到的结果都为False,其余情况都为True
 >>> age = 12
 >>> res = bool(age)
 >>> res
 True
 >>> age = 0
 >>> res = bool(age)
 >>> res
 False
 >>> str1 = ''
 >>> res = bool(str1)
 >>> res
 False
 >>> name = []
 >>> res = bool(name)
 >>> res
 False
 接受输入
 >>> input("正方形的边长为:")
 正方形的边长为:22
 '22'
 >>> B = input("正方形的边长为:")
 正方形的边长为:22
 >>> B
 '22'
 >>> type(B)
 <class 'str'>
 >>> B = int(input("正方形的边长为:"))
 正方形的边长为:22
 >>> type(B)
 <class 'int'>
 >>> B * B
 484

二、运算符

2.1 算术运算符

符号含义
+加法
-减法
*乘法
/除法(得到的结果是浮点型)
%取余(得到余数)
//整除(有余数的情况下,得到整数部分)
**幂(乘方)

2.2 赋值运算符(优先级最低)

符号含义实例
=赋值运算c = a + b
+=加赋值a += b ---> a = a + b
-=减赋值a -= b ---> a = a - b
*=乘法赋值a *= b ---> a = a * b
/=除法赋值a /= b ---> a = a / b
//=整除赋值a //= b ---> a = a // b
%=取余赋值a %= b ---> a = a % b
**=幂赋值a = b ---> a = a b

2.3 比较运算符

比较运算符得到的结果是bool

符号含义
>大于号,比较两边数值的大小,返回结果是布尔型
<小于号
==等号,仅比较两边数值是否相等(可以比较两边字符串是否相同,先比较是否同类型,在比较是否相等):’
>=大于等于
<=小于等于
!=不等于
 >>> print(5>22)
 False
 >>> print(22 == 25)
 False
 >>> print(56 >= 56)
 True
 >>> print(88 >= 99)
 False
 >>> print(66 != 77)
 True
 >>> print(66 != 66)
 False

2.4 逻辑运算符(not>and>or)

得到的结果是bool

符号含义
and与运算,与中学数学中'且'含义一样。and左右两边的值必须都为真才为真否则为假
or或运算,与中学数学中'或'含义一样。or左右两边的值有一个为真则为真,全为假才假
not非运算,与中学数学中'非'含义一样。取反之意;即not后的值为真则结果为假,否则反之
 >>> True and False
 False
 >>> True and True
 True
 >>> False and False
 False
 ​
 >>> True or False
 True
 >>> True or True
 True
 >>> False or False
 False
 ​
 >>> not False
 True
 >>> not True
 False
 ​
 # 小明:语文 95 数学 98  就站门口两个小时
 >>> C = int(input("语文成绩:"))
 语文成绩:99
 >>> M = int(input("数学成绩:"))
 数学成绩:90
 >>> print(C >= 95 and M>= 98)
 False
 >>> print(C >= 95 or M>= 98)
 True
 ​
 # 短路
 and :当and前面的值为假,and就不往后面执行
 >>> 1 and 0
 0
 >>> 0 and 1
 0
 >>> 0 and 2
 0
 >>> 1 and 1
 1
 ​
 or: 当or前面的值为真,or就不往后面执行
 >>> 1 or 0
 1
 >>> 0 or 1
 1
 >>> 0 or 0
 0
 >>> 1 or 2
 1

2.5 成员运算符

得到的结果是bool

in : 表示该元素(数据)在该序列中

not in : 表示该元素(数据)不在该序列中

 >>> name = '小明'
 >>> print('小' in name)
 True
 >>> str1 = "嫌水摸鱼很帅"
 >>> print('丑' in str1)
 False
 >>> print("丑" not in str1)
 True
 >>> ls = [23 , 33 , 43 , 34]
 >>> print(45 in ls)
 False
 >>> print(23 in ls)
 True

2.6 运算符优先级

先乘除再加减。

 >>> 2 + 1 * 3
 5
 >>> 23 and 1 - 1
 0
 >>> 23 > 20 + 1
 True
 >>> 23 > 25 - 5
 True
 >>>

小括号可改变优先级,移位运算符优先级又高于按位运算符

 a = 2
 b = 3
 print("a和b转换为二进制为:", bin(a), bin(b))
 -------------------------------------
 [output]: a和b转换为二进制为: 0b10 0b11

下面我就用2和3,也就是0010和0011举例。

 a = 0010  #2
 b = 0011  #3
 ​
 a&b = 0010  #2
 a|b = 0011  #3
 a^b = 0001  #1
 ~a = 1101  #-3
 ​
 a<<1 = 0100 #左移一位,相当于乘2,得到4
 a>>1 = 0001 #右移一位,相当于除以2,得到1
 a>>2 = 0000 #右移两位,相当于除以4,不能整除时向下取整,得到0
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值