# 作者: HY
#CSDN 博客地址: https://blog.csdn.net/weixin_46152207
# 开发时间: 2021/8/20 18:03
#input 函数的使用
#Python 的输入函数 input()
# input() 函数的介绍
# input 函数 -- 》作用 -- 》接受来自用户的输入
# -- 》返回值类型 -- 》输入值的类型为 str
# -- 》值的存储 -- 》使用 = 对输入的值进行存储
#
# input() 函数的基本使用
# present=input(' 大圣想要什么礼物呢? ')
# print(present,type(present))
# 从键盘录入两个整数,计算两个整数的和
# a=int(input(' 请输入一个加数: '))
# b=int(input(' 请输入另一个加数: '))
# print(type(a),type(b))
# print(a+b)
#Python 中的运算符 --> 取余运算符 -- 》 %
# -- 》算术运算符 > --> 标准算数运算符 --> 加 (+) 减 (-) 乘 (*) 除 (/) 整除 (//)
# -- 》赋值运算符 --> 幂运算符 -->**
# 常用运算符 -- 》比较运算符
# -- 》布尔运算符
# -- 》位运算符
# print(1+1) # 加法运算
# print(1-1) # 减法运算
# print(2*4) # 乘法运算
# print(1/2) # 除法运算
# print(11/2) # 除法运算
# print(11//2) #5 整除运算 只取整数部分
# print(11%2) # 取余运算 只取余数
# print(2**2) # 表示的是 2 的 2 次方
# print(2**3) # 表示的是 2 的三次方 2*2*2
# print(9//4) #2
# print(-9//-4) #2
# print(9//-4) #-3
# print(-9//4) #-3 一正一负的整数公式,向下取整
# print(9%-4) #-3 外汇跟单gendan5.com 公式 余数 = 被除数 - 除数 * 商 9- ( -4 ) * ( -3 ) =9-12 =-3
# print(-9%4) #3 -9-4* ( -3 ) =-9+12=3
# # 赋值运算符,运算顺序从右到左
# i=3+4
# print(i)
# a=b=c=20 # 链式赋值
# print(a,id(a))
# print(b,id(b))
# print(c,id(c))
# print('--------------- 支持参数赋值 ---------')
# a=20
# a+=30 # 相当于 a=a+30
# print(a)
# a-=10 # 相当于 a=a-10
# print(a)
# a*=2
# print(a)
# print(type(a))
# a/=3
# print(a)
# print(type(a))
# a//=2
# print(a)
# print(type(a))
# a%=3
# print(a)
#
# print('-------- 支持系列解包赋值 ----------------')
# a,b,c=20,30,40
# print(a,b,c)
#
# #a,b=20,30,40 报错,因为左右变量的个数和值得个数不对应
# print('------ 交换两个变量的值 ----------')
# a,b=10,20
# print(' 交换之前: ',a,b)
# # 交换
# a,b=b,a
# print(' 交换之后: ',a,b)
print('------- 比较运算符 --------')
# 比较运算符,比较运算符的结果为 bool 类型
a,b=10,20
print('a>b 吗? ',a>b) #fasle
print('a 吗? ',a
print('a<=b 吗? ',a<=b) #True
print('a>=b 吗? ',a>=b) #fasle
print('a=b 吗? ',a==b) #fasle
print('a!=b 吗? ',a!=b) #True
# ''' 一个 = 称为赋值运算符, == 称为比较运算符
# 一个变量由三部分组成,标识,类型,值
# == 比较的是值还是标识呢? 比较的是值
# 比较对象的标识使用 is
# ’‘’
a=10
b=10
print(a==b) #True 说明 a 与 b 的 value 相等
print(a is b) #True 说明 a 与 b 的 id 标识相等
# 以下代码没学过,后面会给大家讲解
lst1=[11,22,33,44]
lst2=[11,22,33,44]
print(lst1==lst2) #value
print(lst1 is lst2) #id
print(id(lst1))
print(id(lst2))
print(a is not b) #False a 的 id 与 b 的 id 不相等的
print(lst1 is not lst2) #True
print("-------- 布尔值运算符 -------")
print('--------and 并且 ')
a,b=1,2
print(a==1 and b==2) #True True and True -->True
print(a==1 and b<2) #False True and False -->False
print(a!=1 and b==2) #false flase and true -->flase
print(a!=1 and b!=2) #false flase and flase -->flase
print('-----or 或者 ------')
print(a==1 or b==2) #true or true -->true
print(a==1 or b<2) #true or flase -->true
print(a!=1 or b==2) #flase or true -->true
print(a!=1 or b!=2) #flase or flase --> flase
print('-----not 对 bool 布尔类型的操作数取反 -----')
f=True
f2=False
print(not f)
print(not f2)
print('-------in 与 not in----')
s='helloworld'
print('w' in s)
print("k" in s)
print('w' not in s) #flase
print("k" not in s) #true
print('------ 位运算符 ------')
print(4&8) # 按位与 & ,同为 1 时结果为 1
print(4|8) # 按位或 | ,同为 0 时结果为 0
print(4<<1) # 向左移动 1 位(移动一个位置),相当于乘以 2
print(4<<2) # 向左移动 2 位(移动两个位置)
print(4>>1) # 向右移动 1 位,相当于除以 2
print(4>>2) # 向右移动 2 位,相当于除以 4
# 运算符的优先级
# ①算术运算符( ** --> *,/,//,% --> +,- )
# ②位运算符 ( <<,>> --> & --> | )
# ③比较运算符 True , Flase ( >,<,>=,<=,==,!= )
# ④布尔运算符 ( and , or )
# ⑤赋值运算符 ( = )
# 如果有()先运算计算括号中的内容
#
# 知识点总结:
# ---> 用于接受用户获入
# input ()函数 ---> 返回值为 str
# ---> 使用 = 赋值变量存储
#
#
# ---> 算术运算符
# 运算符 ---> 赋值运算符
# ---> 布尔运算符
# ---> 比较运算符
# ---> 位运算符
#
#
# ---> 0
# 运算符的优先级 ---> 算术运算符
# ---> 位运算符
# ---> 比较运算符
# ---> 布尔运算符
# ---> 赋值运算符