Python数据类型转换(新)

Python数据类型的转换

数据类型分为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)

函数 描述
[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) 将一个整数转换为一个八进制字符串
posted @   Yang0710  阅读(23)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
  1. 1 イエスタデイ(翻自 Official髭男dism) 茶泡饭,春茶,kobasolo
  2. 2 世间美好与你环环相扣 柏松
世间美好与你环环相扣 - 柏松
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

作词 : 尹初七

作曲 : 柏松

编曲 : 彭圣杰

偏偏秉烛夜游

偏偏秉烛夜游

午夜星辰 似奔走之友

爱你每个结痂伤口

酿成的陈年烈酒

入喉尚算可口

入喉尚算可口

怎么泪水 还偶尔失守

邀你细看心中缺口

裂缝中留存 温柔

此时已莺飞草长 爱的人正在路上

此时已莺飞草长 爱的人正在路上

我知他风雨兼程 途经日暮不赏

穿越人海 只为与你相拥

此刻已皓月当空 爱的人手捧星光

我知他乘风破浪 去了黑暗一趟

感同身受 给你救赎热望

知道你不能 还要你感受

知道你不能 还要你感受

让星光加了一点彩虹

让樱花偷偷 吻你额头

让世间美好 与你环环相扣

此时已莺飞草长 爱的人正在路上

此时已莺飞草长 爱的人正在路上

我知他风雨兼程 途经日暮不赏

穿越人海 只为与你相拥

此刻已皓月当空 爱的人手捧星光

我知他乘风破浪 去了黑暗一趟

感同身受 给你救赎热望

此时已莺飞草长 爱的人正在路上

此时已莺飞草长 爱的人正在路上

我知他风雨兼程 途经日暮不赏

穿越人海 只为与你相拥

此刻已皓月当空 爱的人手捧星光

我知他乘风破浪 去了黑暗一趟

感同身受 给你救赎热望

知道你不能 还要你感受

知道你不能 还要你感受

让星光加了一点彩虹

当樱花开的纷纷扬扬

当世间美好 与你环环相扣

特别鸣谢:槿葵,我们的海报制作妹妹。

原唱:柏松

吉他:柏松

和声:柏松

录音:柏松

混音:张强

点击右上角即可分享
微信分享提示