• 进制数据类型运算符


    进制数据类型运算符

    一、进制的表示

    1.十进制

    b = 98    # 在python中输入默认数字就是好十进制
    

    2.二进制

    b = 0b10001110    # 以0b开头的是二进制,但是打印出来会显示十进制
    
    >>> bin = 0b10011100
    >>> print(bin)
    156
    

    3.八进制

    c = 0o    # 以0o开头的数字是八进制的数据
    
    >>> c = 0o55614
    >>> print(c)
    23436
    

    4.十六进制

    d = 0x2E    # 以0x开头的是十六进制
    
    >>> d = 0x2E
    >>> print(d)
    46
    

    二、进制转换

    a = 10
    print(bin(10))
    
    0b10010
    
    bin()    # 将数字转位二进制
    oct()    # 将数字转位八进制进制
    hex()    # 将数字转位十六进制
    

    三、数据类型转换

    将一个类型的数据转换为另一个类型。

    int ====> str

    bool ====> int

    int =====> float

    不同的数据类型运算规则是不一样的,所以需要进行类型转换。

    例如:

    age = input('请输入你现在的年龄:')
    age = int(age)    # input保存的变量是字符串,不能与整型变量运算
    print("你去年的年龄是:%d" %(age -1 ))
    
    # 如果不进行类型转换
    	
    age = input('请输入你现在的年龄:')
    # age = int(age)    # input保存的变量是字符串,不能与整型变量运算
    print("你去年的年龄是:%d" %(age -1 ))
    # -----------#
    
    请输入你现在的年龄:18
    Traceback (most recent call last):
      File "D:/qianfeng-python/day02/字符类型转换.py", line 4, in <module>
        print("你去年的年龄是:%d" %(age -1 ))
    TypeError: unsupported operand type(s) for -: 'str' and 'int'
    
    进程已结束,退出代码为 1
    

    1.换为整型

    # 使用内置函数int()
    # 如果字符串不是一个合法的数字会报错。
    
    >>> a = '31'
    >>> b = int(a)
    >>> print(a + 1)      # a 的类型是字符型不能进行加减运算
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: can only concatenate str (not "int") to str
    >>> print(b + 1)
    32
    
    # 这是吧1a2c识别为十六进制,在
    
    a = '1a2c'
    x = int(a,16)
    print(x)
    
    #=====输出结果====== # 
    6700
    
    # 转换为二进制
    print(bin(x))
    
    #=====输出结果====== # 
    0b1101000101100
    

    2.转换为浮点型

    1. 转换的数据必须是被识别为有效的浮点数,比如我们看起来像小数的。
    2. 可以把整数转换为浮点数
    >>> a = '3.32'
    >>> b = float(a)
    >>> print(b+1)
    4.32
    
    >>> a = 100
    >>> print(float(100))
    100.0
    

    3.转换为字符串

    # 使用内置类str()转换为字符串
    >>> b = 34
    >>> c = str(34)
    >>> print(c)
    34
    >>> print(type(c))
    <class 'str'>
    >>> print(type(b))
    <class 'int'>
    

    4.转换为bool类型

    # 把100转换为布尔值
    >>> print(bool(100))
    True
    
    # 非0之外的都是True
    >>> print(bool(0))
    False
    
    # 字符串转换为bool,非空的都为True
    >>> print(bool(""))
    False
    
    # None是False
    >>> print(bool(None))
    False
    
    # 空列表、集合、字典、元组返回的是False
    >>> a=()
    >>> b={}
    >>> c=[]
    >>> bool(a)
    False
    >>> bool(b)
    False
    >>> bool(c)
    False
    

    在python中True表示1, False表示0

    >>> print(True + 1)
    2
    

    四、运算符

    1.算数运算符

    运算符 用途
    +
    -
    *
    /
    ** 幂运算
    // 取商
    % 取余
    () 优先运算
    >>> print(True + 1)
    2
    
    >>> print(10 - 9)
    1
    
    >>> print(2 * 3)
    6
    
    # 在python2中不管能不能除尽,只会取商;在python3中会返回浮点数。
    >>> print(10/5)
    2.0
    
    # 表示为4开方
    >>> print(4 ** 0.5)
    2.0
    
    # 取商
    >>> print(10 // 3)
    3
    
    # 取余
    >>> print( 23 % 20)
    3
    

    运算在字符类型中的应用

    # 起到了拼接字符串的作用。
    >>> print('hello'+'nihao')
    hellonihao
    
    # 数字和字符串进行乘法运算。
    >>> print('hello\n' * 2)
    hello
    hello
    

    2.赋值运算符

    "=" 表示赋值运算符。表示的是把等号右边的值赋值给左边的变量。

    a = 4 表示的是把4赋值给变量a

    等号的左边一定不能是常量或者是表达式。

    >>> a = 4
    
    >>> x = 1
    >>> x = x + 2
    >>> print(x)
    3
    # 同等于
    >>> x =1
    >>> x +=2
    >>> print(x)
    3
    
    
    x = 1
    # 与 x = x + 2同等功能
    x += 2
    x *= 2
    x /= 2
    x **=2
    x -= 2
    x %= 2
    

    特殊的赋值

    >>> a = b =c = d = 'hello'
    >>> print(a,b,c,d)
    hello hello hello hello
    
    # 拆包,如果两边的个数不一致会导报错。
    >>> m, n = 3, 5
    >>> print(m, n)
    3 5
    
    # 元组,和元组一样,么有()
    >>> x ="hello", "old", "are"
    >>> print(type(x))
    <class 'tuple'>
    
    # *表示长度可变
    >>> o, *p ,q = 1, 2, 3, 4, 5
    >>> print(o, p, q)
    1 [2, 3, 4] 5
    
    >>> *o, p ,q = 1, 2, 3, 4, 5
    >>> print(o, p, q)
    [1, 2, 3] 4 5
    
    >>> o, p ,*q = 1, 2, 3, 4, 5
    >>> print(o, p, q)
    1 2 [3, 4, 5]
    

    3.比较运算符

    # > 大于
    # < 小于
    # >= 大于等于
    # <= 小于等于
    # != 不等于 <> 在python中支持
    # == 等于
    
    print(6 > 4)
    print(4 < 6)
    print(4 >= 3)
    print(5 <= 10)
    print('a' != 'b')
    print(2 != 2)
    
    # 字符得比较会使用字符得编码进行比较
    print('a' > 'b')
    print('b' > 'a')
    

    4.逻辑运算符

    # 与 and 或 or 非 not
    
    # 1。and 只要一个是错误的就都是False
    print(2 > 1 and 3 > 2 and 4 > 1) # True
    print(1 > 2 and 3> 1 and 4 == 4) # False
    
    # 2. or 只要一个是对得都是对True
    print(1 > 2 or 2 > 1 or 3 >10 ) # True
    
    # not 取反
    print(not (3 > 2))  # False
    
    # 运算短路问题
    4 > 3 and print('hello word!')
    3 > 4 and print('你好世界')  # 逻辑与只要运行到False的地方就不会向后面执行了
    10 > 1 and print("最后的")
    
    # or 运算符
    # 只有所有的False才是False
    # 只要出现一个True就是True,所有就不会向后执行了。
    4 > 3 or print('hahha')
    3 > 4 or print('aaaaa')  # 因为前面的结果是False所以继续像后面执行。
    

    5.位运算符

    
    
  • 相关阅读:
    处理跨浏览器的事件处理程序
    html5 canvas时钟
    拖拽事件的原理
    改变top使用轮播图
    程序开发之最大子数组
    第四周学习进度
    敏捷开发相关阅读
    构建之法读书笔记04
    四则运算终结版
    第三周学习进度
  • 原文地址:https://www.cnblogs.com/gshelldon/p/16246338.html
Copyright © 2020-2023  润新知