• python复习


    进制之间的转换

    十进制 二进制 八进制 十六进制
    0 0 0 0
    1 1 1 1
    2 10 2 2
    3 11 3 3
    4 100 4 4
    5 101 5 5
    6 110 6 6
    7 111 7 7
    8 1000 10 8
    9 1001 11 9
    10 1010 12 a
    11 1011 13 b
    12 1100 14 c
    13 1101 15 d
    14 1110 16 e
    15 1111 17 f

    二进制与八进制的关系

    八进制最大数为7, 而7的二进制数为111, 所以 一个八进制数据=3位二进制数


    如果要计算二进制到八进制时候, 则可以将二进制数3个3个拆解,然后进行拼接

    111=2**2+2**1+2**0=4+2+1


    二进制 八进制
    001011 13 (001 011)
    11011011100 3334(011 011 011 111 )

    对于二进制 001011 可以拆解为 001,011, 001 转换成八进制是1, 011 转换成八进制数是 3, 所以最后的结果是13

    对于二进制11011011100, 可以拆解为 011, 011, 011,111, 前面三个011的计算结果为3, 111的计算结果为4, 所以最后的结果是3334


    二进制与十六进制的关系

    八进制最大数为f,在十进制中表示为15, 十六进制中f(十进制中的15)的二进制数为1111, 所以 一个十六进制数据=4位二进制数


    如果要计算二进制到十六进制时候, 则可以将二进制数4个4个拆解,然后进行拼接

    1111=2**3+2**2+2**1+2**0=8+4+2+1


    二进制 十六进制
    11010111000 6b8
    110101001 1a9

    对于二进制 11010111000 可以拆解为 0110,1011, 1000

    0110转换成十六进制是6, 1011 转换成十六进制数是 b, 1000转换成十六进制是8, 所以最后的结果是6b8

    对于二进制 110101001 可以拆解为 0001,1010, 1001

    0001转换成十六进制是1, 1010 转换成十六进制数是 a, 1001转换成十六进制是9, 所以最后的结果是1a9


    python运算符


    逻辑运算(二进制的加乘)

    逻辑运算都是布尔运算, 而在布尔运算中, True 表示1, False 表示0, 本质上逻辑运算就是0和1的加法和乘法运算

    与运算(and): 乘法

    或运算(or): 加法

    非运算(not): 切换True和False


    位运算

    << 左移 ----------- 本质上就是二进制数往左偏移多少位, 本质上就是乘法, 往左偏移一位*2, 偏移2位*4


    >> 右移 ----------- 本质上就是二进制数往右偏移多少位, 本质上就是除法, 往左偏移一位/2, 偏移2位/4


    运算符优先级

    • 大概规律

    单目运算符 > 双目运算符

    索引运算符 > 属性访问运算符 > 乘除 > 加减 > 比较运算符 > is 运算符 > in 运算符 > 逻辑非 > 逻辑与 > 逻辑或

    Python 运算符优先级和结合性一览表
    运算符说明 Python运算符 优先级 结合性 优先级顺序
    小括号 ( ) 19
    ︿
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     |
     | 
     |
     |
    索引运算符 x[i] 或 x[i1: i2 [:i3]] 18
    属性访问 x.attribute 17
    乘方 ** 16
    按位取反 ~ 15
    符号运算符 +(正号)、-(负号) 14
    乘除 *、/、//、% 13
    加减 +、- 12
    位移 >>、<< 11
    按位与 & 10
    按位异或 ^ 9
    按位或 | 8
    比较运算符 ==、!=、>、>=、<、<=  7
    is 运算符 is、is not 6
    in 运算符 in、not in 5
    逻辑非 not 4
    逻辑与 and 3
    逻辑或 or 2
    逗号运算符 exp1, exp2 1

    练习

    1, python实现九九乘法表


    start = range(1, 10)  
    end = range(1, 10)
    
    for i in start:
        for j in end:
            if not i<j:
                print('%s*%s=%s' % (j, i, i * j), end=' ')
        print(' ', end='
    ')
    
  • 相关阅读:
    vue改变了数据却没有自动刷新
    Unable to find vcvarsall.bat
    修改Linux用户配置之后先验证再退出
    平面最远点对
    [转]你可能不知道的五个强大HTML5 API
    sqlite3常用技巧
    使用rsync
    画图必备numpy函数
    np.percentile获取中位数、百分位数
    [转]numpy 100道练习题
  • 原文地址:https://www.cnblogs.com/cjwnb/p/12879863.html
Copyright © 2020-2023  润新知