python学习笔记(变量与运算符)

一. 变量

1.什么是变量?

通俗来说,就是给数据起一个名字,  将数据赋值给一个变量名

变量名要有意义,可读性要强

定义:   = 赋值符号

变量名 = [1,2,3,4,5]

2.变量名命名规则

  1. 由数字,字母,_组成
  2. 变量名的首字符不能是数字
  3. 不能使用 系统关键字,保留关键字
  4. 变量名是区分大小写的

3.值类型(不可变)与引用类型(可变)

数字, 字符串,元组 不可变数据类型

列表, 字典, 集合可变数据类型

# int 为值类型
a = 1
b = a
a = 3
print(b)

# list 为引用类型
c = [1,2,3,4,5]
d = c
c[0] = '1'
print(d)

# 不可变中的可变是可以被修改的
a = (1,2,3,['a',4,6])
a[3][1] = 8
print(a)

二. 运算符号

1.算数运算符

  • 加法+
  • 乘法*
  • 减法-
  • 除法/
  • 整除//
  • 取余%
  • 次方(二次方**、三次方***

2.赋值运算符

  • a = 1  是把1赋值给 a
  • 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 等同于 a**=b

+=,*=等赋值运算,   先运算,后赋值

3.比较(关系)运算符

  • 比较(关系)运算符:
  • ==:比较两种数据类型是否相等
  • !=:比较两组数据类型是否不等
  • >:大于
  • <:小于
  • >=:大于等于
  • <=:小于等于

比较运算符得到的结果是布尔值(True/False)

非数字类型做比较运算,一般是看其ascll码

# True 可以算作1
b=1
b+=b>=1
print(b)

有多个元素,则从第一个开始依次比较

a=[1,2,3]
b=[1,3,2]
print(a>b)
# 返回false

4.逻辑运算符

  • and  且  两遍为True 返回True,  两边任一为False 返回False  
    True and True   返回True
    False and True  返回False
  •  or   或,  两边任一为True 返回True, 都未False 返回 
    True or True  True
    True or False True
    False or False False
  • not 不是
    not False  返回True
    not True   返回False

非bool 元素规则

  1. int, float:  0被认为是false ,  非0 表示True
  2. 字符串: 空符串是False ,  其他表示 Frue
  3. 列表: 空列表表示False , 其他表示 True

and 和 or 的返回规则:

# 根据执行顺序,取最后执行的值
print(1 and 2)
# 返回结果为2,  先判断1是否为True, 还要判断2, 为True时,返回2
print(0 and 1 )
# 返回结果为0,  先判断0, 0为False , 不需要判断后面的1, 所以返回0
print(1 or 2)
# 返回结果1,   1为true, 不用向后判断了, 所以返回 1
print(0 or 2)
# 返回结果2,   0为False, 需要继续判断, 2为True,返回True ,所以返回2

5.成员运算符

  • in:判断元素是否在数据中
  • not in:判断元素是否不在数据中

http://img.mukewang.com/szimg/60e6a4eb08ce7e7c02150056.jpg

对于字典成员运算符,判断的依据是key而非value

http://img.mukewang.com/szimg/60e6a60508856d9201660115.jpg

6.身份运算符

  • is
  • not is

== 与 is 的区别

is 判断的是两个变量的身份是否相等(即内存地址是否相等)

== 判断值是否相等

补充小知识:

  • isinstance(1,str)    ,判断数据类型   
  • isinstance(1,(int,str)) 判断 是否是 int或者str

7.位运算符

把数字当作二进制数进行运算

  • &:按位与:将数字转化为二进制后,分别对相应的位次做“与”操作,得到0(一个0或两个0)和1(两个1),再排列为二进制数转化
  • |:按位或:对相应位次做“或”操作,得到0(两个0)和1(一个1或两个1)
  • ^:按位异或:对相应位次做“异或”操作,不同为1,相同为0;具体就是0^0等于0,1^1等于0,0^1等于1,1^0等于1
  • ~:按位取反:对二进制每一位都做取反操作(0变1,1变0)规律:~x = -(x+1)
  • <<:左移动
  • >>:右移动
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值