python系列三:python3运算符

'''
python 没有自增运算符
python 中,变量是以内容为基准而不是像 c 中以变量名为基准,所以只要你的数字内容是5,
不管你起什么名字,这个变量的 ID 是相同的,同时也就说明了 python 中一个变量可以以多个名称访问。
'''
numa = 5
numb = 5
print(id(numa))
print(id(numb))
numa = 6
print(id(numa))
'''
但是,在交互式环境中,编译器会有一个小整数池的概念,会把(-5,256)间的数预先创建好,
而当a和b超过这个范围的时候,两个变量就会指向不同的对象了,因此地址也会不一样
'''
numa = -1000000000000000000000
numb = -1000000000000000000000
print(id(numa))
print(id(numb))


'''
2 进制是以 0b 开头的: 例如: 0b11 则表示十进制的 3
8 进制是以 0o 开头的: 例如: 0o11 则表示十进制的 9
16 进制是以 0x 开头的: 例如: 0x11 则表示十进制的 17
分别使用 bin,oct,hex 可输出数字的二进制,八进制,十六进制形式
'''
oba = 0b0010101
print(oba)
print(bin(oba))
print(oct(oba))
print(hex(oba))


a = 23    #a = 00010111
b = 4     #b = 00000100
c = 23

'''
is 与 == 区别:
is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。
'''
#s 是判断两个标识符是不是引用自一个对象    x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
if a == c:
    print("a == c")
else:
    print("a != c")
# id() 函数用于获取对象内存地址。
if id(a) == id(c):
    print("id a == c")
else:
    print("id a != c")
    
if a is c:
    print("a is c")
else:
    print("a is not c")
    
if id(a) is id(c):
    print("id a is c")
else:
    print("id a is not c")
    
print("###################")
    
c = a
if a == c:
    print("a == c")
else:
    print("a != c")

if id(a) == id(c):
    print("id a == c")
else:
    print("id a != c")
    
if a is c:
    print("a is c")
else:
    print("a is not c")
    
if id(a) is id(c):
    print("id a is c")
else:
    print("id a is not c")
    
"""
python 中的 and 从左到右计算表达式,若所有值均为真,则返回最后一个值,若存在假,返回第一个假值;
or 也是从左到有计算表达式,返回第一个为真的值;
其中数字 0 是假,其他都是真;
字符 "" 是假,其他都是真;
"""
print(a ^ b)
print(a and b)
print(a or b)
print(not a)

lista = [1,23,4,6]
if a in lista:
    print(True)
else:
    print(False)
    
for a in lista:
    print(a, end = ",")

原文地址:https://www.cnblogs.com/hejing-swust/p/8175802.html