Python的基本数据类型和数据类型的转换

2023-12-24 20:50:36

@TOC

数据类型

类型查看

  1. type

    • 可以使用type内置函数查看变量所指的对象类型

    • a=1
      b=1.0
      c="1"
      d=1,
      e=[1]
      f={1:1}
      g={1}
      
      print(type(a))
      print(type(b))
      print(type(c))
      print(type(d))
      print(type(e))
      print(type(f))
      print(type(g))
      
    • image-20231222112839902

  2. isinstance

    • **如字面意思,isinstance()**来对一个数据类型询问是否是某个类型

    • a = 123654
      print(isinstance(a,int))# -->True
      print(isinstance(a,float))# -->False
      
    • image-20231222113633257

1.数字

python3支持int,float,bool,complex(复数)

注:没有double long longint…

不同于C语言,数字可以表示非常大

print(2**200)

image-20231222114045688

2.字符串

Python中的字符串 是用''" "这两种引号引起来的内容

'我是一个字符串'
"我也是一个字符串"

3.元组

Python中的元组是一种不可变的顺序表

4.列表

Python中的列表是一种可变的顺序表

5.字典

字典是一种键值对

6.集合

集合是一种值的集合

数据类型的转换

数据类型分为1.隐式类型转换 2.显式类型转换

隐式类型转换

  • 在隐式类型转换中,Python会自动将一种数据类型转换为另一种数据类型,不需要认为去干预

    • 比如在进行算术运算的时候,较低数据类型(整数)就会转换为较高的数据类型(浮点数)以免数据丢失

    • a = 1
      b = 1.5
      c = a+b
      print(type(c))
      
    • image-20231222121510929

  • 但是如果我们使用 数字 字符串数字 进行相加呢

    • str = "231"
      a = 123
      print(a+str)
      
    • image-20231222121714463

    • 竟然没有转换成功,于是我们可以通过显示类型转换来解决这个问题

显式类型转换

? 我们只需要简单的把上述式子改为下面式子

str = float("231")
a=123
print(a+str) #-->float

如此转换就符合我们的预期

  1. 转换成整数

    • 采用int(x,[,base])可以将对象x转换成一个十进制的整数[,base]指的是x为几进制,然后我们转化为十进制去表示

    • a = int("1100",2)
      b = int("65",10)
      c = int("0x1f",16)
      
      print(a)
      print(b)
      print(c)
      
    • image-20231223085327486

    • 注:进制要注意匹配,比如65,它至少时七进制,不可能是5进制,二进制…,

    • 在python中最大进制是在[2,36]的区间

    • image-20231223085810426

  2. 转换为浮点数

    • 采用float(x)将对象转换为一个浮点数,如下

    • a = float("2153545.135453")
      
      print(a)
      

      运行结果:

    • image-20231223090022609

  3. 转为复数

    • 采用complex(real,[,image]),可以创建一个复数,如下

    • a = complex(20,10)
      
      print(a)
      
    • image-20231223102934522

  4. 转换成字符串

    • 采用str(x)k可以将x转换成一个字符串,如下

    • a = 10000.765
      c = str(a) # 注意最好不要使用str去做标识符,不然会报错
      print(c)
      

      image-20231223151343870

  5. 转换成表达式字符串

    • 采用repr(x)可以将x转化成表达式字符串,如下

    • a = '10000.765'
      b = repr(a)
      c = str(a)
      print(b)
      print(c)
      
    • image-20231223151618148

    • image-20231223151556790

  6. 字符转换

    1. 整数转字符

      可以利用chr(x),把x转化为字符,对应的Ascll码

    2. 字符转整数

      可以利用ord(x)将字符x转换为一个整数,他是chr(x)的逆运算

  7. 转化成基础数据结构

    1. 转化为元组

      tuple(s)

    2. 转换为列表

      list(s)

    3. 转换成可变集合

      set(s)

    4. 转换成不可变集合

      frozenset(s)

    5. 转换成字典

      dict(d)

文章来源:https://blog.csdn.net/weixin_75111785/article/details/135185323
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。