• Python(三)数据类型转换



    程序员的公众号:源1024,获取更多资料,无加密无套路!

    最近整理了一份大厂面试资料《史上最全大厂面试题》,Springboot、微服务、算法、数据结构、Zookeeper、Mybatis、Dubbo、linux、Kafka、Elasticsearch、数据库等等
    获取方式: 关注公众号并回复 666 领取,更多内容持续奉上


    数据类型转换

    1、隐式类型转换

    1. a = 12
    2. b = 1.2
    3. c = a + b
    4. print("a 数据类型为:",type(a))
    5. print("b 数据类型为:",type(b))
    6. print("c 值为:",c)
    7. print("c 数据类型为:",type(c))
    8. #输出
    9. a 数据类型为: <class 'int'>
    10. b 数据类型为: <class 'float'>
    11. c 值为: 13.2
    12. c 数据类型为: <class 'float'>

    int类型与float类型计算结果是float类型,Python 会将较小的数据类型转换为较大的数据类型,以避免数据丢失。

    1. a = 123
    2. b = "456"
    3. print("a 数据类型为:",type(a))
    4. print("b 数据类型为:",type(b))
    5. print(a+b)
    6. #输出
    7. a 数据类型为: <class 'int'>
    8. b 数据类型为: <class 'str'>
    9. Traceback (most recent call last):
    10. print(a+b)
    11. TypeError: unsupported operand type(s) for +: 'int' and 'str'

    整型和字符串类型运算结果会报错,输出 TypeError。 Python 在这种情况下无法使用隐式转换,Python 提供了一种解决方案,称为显式转换

    2、显式类型转换

    显式类型转换中,可以使用预定义函数将对象的数据类型转换为所需的数据类型。 

    函数        描述
    int(x [,base])将x转换为一个整数
    float(x)将x转换到一个浮点数
    complex(real [,imag])创建一个复数
    str(x)将对象 x 转换为字符串
    repr(x)将对象 x 转换为表达式字符串
    eval(str)用来计算在字符串中的有效Python表达式,并返回一个对象
    tuple(s)将序列 s 转换为一个元组
    list(s)将序列 s 转换为一个列表
    set(s)转换为可变集合
    dict(d)创建一个字典。d 必须是一个 (key, value)元组序列。
    frozenset(s)转换为不可变集合
    chr(x)将一个整数转换为一个字符
    ord(x)将一个字符转换为它的整数值

    hex(x)

    将一个整数转换为一个十六进制字符串

    oct(x)

    将一个整数转换为一个八进制字符串

     int() 强制转换为整型

    1. a = int(2.3)
    2. b = int("12")
    3. print(a) #输出 2
    4. print(b) #输出 12

     float() 强制转换为浮点型

    1. a = float(11)
    2. b = float(2.2)
    3. c = float("13")
    4. d = float("3.14")
    5. print(a)
    6. print(b)
    7. print(c)
    8. print(d)
    9. #输出
    10. 11.0
    11. 2.2
    12. 13.0
    13. 3.14

    str() 强制转换为字符串类型

    1. a = str("aa")
    2. b = str(23)
    3. c = str(3.14)
    4. print(a)
    5. print(b)
    6. print(c)
    7. #输出
    8. aa
    9. 23
    10. 3.14

    不同类型进行计算

    1. a = 123
    2. b = "456"
    3. print("a 数据类型为:",type(a))
    4. print("b 数据类型为:",type(b))
    5. print(a + int(b))
    6. #输出
    7. a 数据类型为: <class 'int'>
    8. b 数据类型为: <class 'str'>
    9. 579

     其他函数使用:

    1. print(chr(65))
    2. print(ord('A'))
    3. print(hex(11))
    4. print(oct(11))
    5. #输出
    6. A
    7. 65
    8. 0xb
    9. 0o13

  • 相关阅读:
    基于FPGA的PSRAM接口设计与实现
    并发编程二 JMM&volatile详解
    Golang代码漏洞扫描工具介绍——govulncheck
    虚拟人实时互动之基于Android驱动表情随动
    海藻酸-磷脂微囊复合水凝胶/具有细胞膜仿生温敏性水凝胶的相关内容
    springboot源码编译报错Unable to start the daemon process
    vue3切换路由模式——Hash 、histoary
    509.斐波那契数 | 322.零钱兑换
    nano的CAN通信
    代码随想录算法训练营第57天 | 647. 回文子串 516.最长回文子序列 dp总结
  • 原文地址:https://blog.csdn.net/feikillyou/article/details/134255644