1、python3的整除与取模
1、// 被除数为负数时,会向下取整,例:-134//10 >>> -14 134//-10 >>>-14 -134//-10 >>>13
2、% 其他语言中为取余, python3中为取模 (符号与除数保持一致) 例:-134%10 >>> 6 -134%-10 >>>-4
取模的计算公式 c = a//b r = a - c×b(取模和取余的公式一致,由于取整时对于python的计算结果不同,导致取模在python中值不同)
3、在python中,除数取整为“//” , “/”为正确完整结果
5/2 >>>2.5 5//2 >>>2
def reverse(x) : INT_MIN, INT_MAX = -2 ** 31, 2 ** 31 - 1 rev = 0 while x != 0: # INT_MIN 也是一个负数,不能写成 rev < INT_MIN // 10 if rev < INT_MIN // 10 + 1 or rev > INT_MAX // 10: return 0 digit = x % 10 # Python3 的取模运算在 x 为负数时也会返回 [0, 9) 以内的正数的结果,因此这里需要进行特殊判断 if x < 0 and digit > 0: digit -= 10 # 同理,Python3 的整数除法在结果为负数时会向下(更小的负数)取整,因此不能写成 x //= 10 x = (x - digit) // 10 rev = rev * 10 + digit print(rev) print(-134//-10) print(-134%-10)
2、utf-8-sig
以‘ufeff’开头的字符代表编码格式为: utf-8-sig
(1)bom: BOM是用来判断文本文件是哪一种Unicode编码的标记,其本身是一个Unicode字符("uFEFF"),位于文本文件头部。