a = 10
b = 20
print(a+b) #
print(a-b) #-10
print(a*b) #
print(a*b) #
print(a/b) #0.5
print(a%b) #10,返回余数
print(a**b) #10^20
print(a//b) #0,取整,返回商的整数部分 print(a and b) #与操作,返回值为20
print(a or b) #或操作,返回值为10
print(not(a and b)) #非操作,返回值为false

三元运算:

结果 = 值1  if 条件 else 值2

结果的取值由条件进行控制,如果条件为真,即成立,值1的赋值给结果,如果条件为假,即不成立,值2的赋值给结果。

 #三元运算:结果 = 值1 if 条件 else 值2
a,b,c = 1,3,5
d = a if a > b else c
print(d) #

 进制转换:

表示各进制的符号:
b:二进制,o:八进制,d:十进制,x:十六进制
bin()、oct()、hex()返回值均为字符串,且分别带有0b、0o、0x前缀。
hex函数比格式化字符串函数format慢,不推荐使用。 eval函数比int函数慢,不推荐使用。

二进制、十六进制、八进制之间的转换,可以借助十进制这个中间值,即先转十进制再转其他进制,也可以直接使用函数进行转换。
 #进制转换
print(bin(10)) #十进制转二进制:0b1010,其中0b表示二进制
print('{0:b}'.format(10)) # print(oct(12)) #十进制转八进制:0o14,其中0o表示八进制
print('{0:o}'.format(12)) # print(hex(12)) #十进制转十六进制:0xc,其中0x表示十六进制
print('{0:x}'.format(12)) #c print(int('',2)) #二进制转十进制:10,其中int中的两个参数分别为要转换的数和该数的进制
print(eval('0b1010')) # print(int('',8)) #八进制转十进制:12
print('{0:d}'.format(0o14)) #12,需要强调14为八进制的14,所以应该表示成0o14 print(int('0xc',16)) #十六进制转十进制:12
print(eval('0xc')) #

在使用format格式化输出进行进制转换时,例如:'{0:d}'.format(0o14),其中'd'代表目标进制符号,也就是需要转换成的进制,format括号内部,当被转换数不为十进制数时,需要在被转换数前面加上进制符号,如0x,0o,0b等,分别表示被转换的数为十六进制形式、八进制形式和二进制形式。

  

  

05-27 02:02