Python 数据类型转换

文章目录

  • 每日一句正能量
  • 前言
  • 隐式类型转换
    • 实例
    • 实例
  • 显式类型转换
    • 实例
    • 实例
    • 实例
    • 实例

每日一句正能量

在人生的道路上,即使一切都失去了,只要一息尚存,你就没有丝毫理由绝望。因为失去的一切,又可能在新的层次上复得。

前言

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,一般情况下你只需要将数据类型作为函数名即可。

Python 数据类型转换可以分为两种:

  • 隐式类型转换 - 自动完成
  • 显式类型转换 - 需要使用类型函数来转换

隐式类型转换

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

以下实例中,我们对两种不同类型的数据进行运算,较低数据类型(整数)就会转换为较高数据类型(浮点数)以避免数据丢失。

实例

num_int = 123
num_flo = 1.23num_new = num_int + num_floprint("datatype of num_int:",type(num_int))
print("datatype of num_flo:",type(num_flo))print("Value of num_new:",num_new)
print("datatype of num_new:",type(num_new))

以上实例输出结果如下图所示:

在这里插入图片描述

代码解析:

  • 实例中我们对两个不同数据类型的变量 num_intnum_flo 进行相加运算,并存储在变量 num_new 中。
  • 然后查看三个变量的数据类型。
  • 在输出结果中,我们看到 num_int整型(integer)num_flo 浮点型(float)
  • 同样,新的变量 num_new 浮点型(float),这是因为 Python 会将较小的数据类型转换为较大的数据类型,以避免数据丢失。

我们再看一个实例,整型数据与字符串类型的数据进行相加:

实例

num_int = 123
num_str = "456"print("Data type of num_int:",type(num_int))
print("Data type of num_str:",type(num_str))print(num_int+num_str)

以上实例输出结果如下图所示:

在这里插入图片描述

从输出中可以看出,整型和字符串类型运算结果会报错,输出 TypeError。 Python 在这种情况下无法使用隐式转换。

但是,Python 为这些类型的情况提供了一种解决方案,称为显式转换。

显式类型转换

在显式类型转换中,用户将对象的数据类型转换为所需的数据类型。 我们使用 int()、float()、str() 等预定义函数来执行显式类型转换。

int() 强制转换为整型:

实例

x = int(1)   # x 输出结果为 1
y = int(2.8) # y 输出结果为 2
z = int("3") # z 输出结果为 3

float() 强制转换为浮点型:

实例

x = float(1)     # x 输出结果为 1.0
y = float(2.8)   # y 输出结果为 2.8
z = float("3")   # z 输出结果为 3.0
w = float("4.2") # w 输出结果为 4.2

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

实例

x = str("s1") # x 输出结果为 's1'
y = str(2)    # y 输出结果为 '2'
z = str(3.0)  # z 输出结果为 '3.0'

整型和字符串类型进行运算,就可以用强制类型转换来完成:

实例

num_int = 123
num_str = "456"print("num_int 数据类型为:",type(num_int))
print("类型转换前,num_str 数据类型为:",type(num_str))num_str = int(num_str)    # 强制转换为整型
print("类型转换后,num_str 数据类型为:",type(num_str))num_sum = num_int + num_strprint("num_int 与 num_str 相加结果为:",num_sum)
print("sum 数据类型为:",type(num_sum))

以上实例输出结果如下图所示:

在这里插入图片描述

以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值。

函数描述

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)

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

转载自:https://blog.csdn.net/u014727709/article/details/131517779
欢迎start,欢迎评论,欢迎指正

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/7790.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity与Android交互(4)——接入SDK

【前言】 unity接入Android SDK有两种方式,一种是把Unity的工程导出google project的形式进行接入,另一种是通过把Android的工程做成Plugins的形式进行接入。我们接入SDK基本都是将SDK作为插件的形式接入的。 对我们接入SDK的人来说,SDK也是…

谷歌浏览器Crx插件库-https://crxdl.com/

地址:https://crxdl.com/ postman插件:talend json插件库:csdn插件 抓取视频:猫抓

科技富豪抑郁了

原美团二当家王慧文据说抑郁了 什么能解决抑郁问题? 趣讲大白话:科技富豪也抑郁 【趣讲信息科技216期】 **************************** 王富豪创立光年之外AI公司2个月就休息了 知识解决不了抑郁问题 抑郁是现代社会一个常见的症状 是压力所带来的综合症…

MySql入门操作

一.前节回顾 1.web项目环境配置 2.通用增删改,通用查询方法 3.前台,后台代码显示效果 所有你都理解了吗? 二.Mysql数据库介绍 1.什么是MySQL? MySQL是一种开源的关系型数据库管理系统。它是目前最流行和广泛使用的数据库之一&…

如何禁用usb接口 禁用usb端口的九种方法

USB(通用串行总线)接口是一种常见的连接设备和计算机的方式。然而,有时候我们可能需要禁用USB接口,以保护电脑上重要数据的安全性或限制用户的访问权限。本文将介绍几种禁用USB接口的方法,包括硬件方法、软件方法、物理…

什么是内存溢出,什么是内存泄漏?

文章目录 一、什么是内存溢出?二、什么是内存泄漏?三、如何避免? 提示:以下是本篇文章正文内容,下面案例可供参考 一、什么是内存溢出? 假设我们 JVM 中可用的内存空间只剩下 3M,但是我们要创…

测试员眼中的____是____

- 1 - 测试员眼中的开发是淘气的孩子 只有靠哄、豁、骗 才能让其完成“作业” - 2 - 测试员眼中的产品经理是女票 不管大小事,只要意见有出入 都得与其商量,才能最终拍板 - 3 - 测试员眼中的UI是艺术家 每天都操着画板(苹果显示器&#xff…

DatenLord前沿技术分享 No.29

达坦科技专注于打造新一代开源跨云存储平台DatenLord,通过软硬件深度融合的方式打通云云壁垒,致力于解决多云架构、多数据中心场景下异构存储、数据统一管理需求等问题,以满足不同行业客户对海量数据跨云、跨数据中心高性能访问的需求。BSV的…

测试员拒绝当“背锅侠”,软件质量不是“测”出来的!

以前有个朋友跟我说:做测试这行就是在隐忍中负重前行。因为测试是软件发布前的最后一个环节,被称作质量出口儿,测试环节之前所有未做好的工作所带来的不良后果,似乎都能被轻松甩锅给测试人员。软件一旦出现问题,我们经…

Tomcat多实例部署

文章目录 一、下载JDK包和tomcat包二、安装JDK和tomcat三、配置 tomcat 环境变量四、修改 tomcat2 中的 server.xml 文件,要求各 tomcat 实例配置不能有重复的端口号五、修改各 tomcat 实例中的 startup.sh 和 shutdown.sh 文件,添加 tomcat 环境变量六、…

神坑:ElasticSearch8集群启动报错“Device or resource busy”(Docker方式)

昨天在Docker中配置ElasticSearcch8集群模式时,先初步配置了master主节点。然后主节点启动就报错,看日志,提示“Device or resource busy”。异常第一句大概这个样子: Exception in thread "main" java.nio.file.FileS…

CMake快速入门

CMake快速入门 CMake 官网:CMake CMake 是一个 跨平台 的安装编译工具,可以用简单的语句来描述 所有平台 的安装(编译过程)CMake 可以说已经成为 大部分C开源项目的标配 1. 为什么要使用CMake? 比如说有一个开源项目,里面有很多 C 的源代…