Python学习-数据运算
在Python中有丰富的算术运算,这使得Python在科学计算领域有着很高的地位,Python可以提供包括四则运算在内的各种算术运算。
1 a = 10 2 b = 20 3 print(a+b) #30 4 print(a-b) #-10 5 print(a*b) #200 6 print(a*b) #200 7 print(a/b) #0.5 8 print(a%b) #10,返回余数 9 print(a**b) #10^20 10 print(a//b) #0,取整,返回商的整数部分 11 12 print(a and b) #与操作,返回值为20 13 print(a or b) #或操作,返回值为10 14 print(not(a and b)) #非操作,返回值为false
三元运算:
结果 = 值1 if 条件 else 值2
结果的取值由条件进行控制,如果条件为真,即成立,值1的赋值给结果,如果条件为假,即不成立,值2的赋值给结果。
1 #三元运算:结果 = 值1 if 条件 else 值2 2 a,b,c = 1,3,5 3 d = a if a > b else c 4 print(d) #5
进制转换:
表示各进制的符号: b:二进制,o:八进制,d:十进制,x:十六进制 bin()、oct()、hex()返回值均为字符串,且分别带有0b、0o、0x前缀。
hex函数比格式化字符串函数format慢,不推荐使用。 eval函数比int函数慢,不推荐使用。 二进制、十六进制、八进制之间的转换,可以借助十进制这个中间值,即先转十进制再转其他进制,也可以直接使用函数进行转换。
1 #进制转换 2 print(bin(10)) #十进制转二进制:0b1010,其中0b表示二进制 3 print('{0:b}'.format(10)) #1010 4 5 print(oct(12)) #十进制转八进制:0o14,其中0o表示八进制 6 print('{0:o}'.format(12)) #14 7 8 print(hex(12)) #十进制转十六进制:0xc,其中0x表示十六进制 9 print('{0:x}'.format(12)) #c 10 11 print(int('1010',2)) #二进制转十进制:10,其中int中的两个参数分别为要转换的数和该数的进制 12 print(eval('0b1010')) #10 13 14 print(int('014',8)) #八进制转十进制:12 15 print('{0:d}'.format(0o14)) #12,需要强调14为八进制的14,所以应该表示成0o14 16 17 print(int('0xc',16)) #十六进制转十进制:12 18 print(eval('0xc')) #12
在使用format格式化输出进行进制转换时,例如:'{0:d}'.format(0o14),其中'd'代表目标进制符号,也就是需要转换成的进制,format括号内部,当被转换数不为十进制数时,需要在被转换数前面加上进制符号,如0x,0o,0b等,分别表示被转换的数为十六进制形式、八进制形式和二进制形式。