当前位置: 首页 > news >正文

Python 数据类型转换

目录

整数(int)与浮点数(float)之间的转换

(1)int():将浮点数或字符串转换为整数

(2)float():将整数或字符串转换为浮点数

字符串(str)与其他类型的转换

(1)str():将其他类型转换为字符串

(2)字符串转其他类型

列表(list)、元组(tuple)和集合(set)之间的转换

(1)list():将其他类型转换为列表

(2)tuple():将其他类型转换为元组

(3)set():将其他类型转换为集合

字典(dict)的转换

(1)从其他类型创建字典

(2)字典转其他类型

特殊类型转换

(1)布尔类型(bool)

(2)复杂类型转换


整数(int)与浮点数(float)之间的转换

(1)int():将浮点数或字符串转换为整数

浮点数转整数:会丢弃小数部分,只保留整数部分。

num = 3.14
int_num = int(num)  # 结果为 3

字符串转整数:字符串必须表示一个有效的整数。

str_num = "123"
int_num = int(str_num)  # 结果为 123

注意:如果字符串不是有效的整数格式,会抛出 ValueError

invalid_str = "123.45"
int_num = int(invalid_str)  # 抛出 ValueError
(2)float():将整数或字符串转换为浮点数

整数转浮点数

num = 10
float_num = float(num)  # 结果为 10.0

字符串转浮点数:字符串必须表示一个有效的浮点数。

str_num = "3.14"
float_num = float(str_num)  # 结果为 3.14

注意:如果字符串不是有效的浮点数格式,会抛出 ValueError

invalid_str = "abc"
float_num = float(invalid_str)  # 抛出 ValueError

字符串(str)与其他类型的转换

(1)str():将其他类型转换为字符串

整数或浮点数转字符串

num = 10
str_num = str(num)  # 结果为 "10"float_num = 3.14
str_float = str(float_num)  # 结果为 "3.14"

列表、元组、字典等转字符串

my_list = [1, 2, 3]
str_list = str(my_list)  # 结果为 "[1, 2, 3]"
(2)字符串转其他类型

字符串转整数或浮点数已在前面提到。

字符串转列表或元组:

使用 list()tuple() 函数,会将字符串的每个字符作为独立元素。

s = "hello"
list_s = list(s)  # 结果为 ['h', 'e', 'l', 'l', 'o']
tuple_s = tuple(s)  # 结果为 ('h', 'e', 'l', 'l', 'o')

列表(list)、元组(tuple)和集合(set)之间的转换

(1)list():将其他类型转换为列表

元组转列表

my_tuple = (1, 2, 3)
my_list = list(my_tuple)  # 结果为 [1, 2, 3]

集合转列表

my_set = {1, 2, 3}
my_list = list(my_set)  # 结果为 [1, 2, 3],顺序可能不同
(2)tuple():将其他类型转换为元组

列表转元组

my_list = [1, 2, 3]
my_tuple = tuple(my_list)  # 结果为 (1, 2, 3)

集合转元组

my_set = {1, 2, 3}
my_tuple = tuple(my_set)  # 结果为 (1, 2, 3),顺序可能不同
(3)set():将其他类型转换为集合

列表或元组转集合:会自动去重。

my_list = [1, 2, 2, 3]
my_set = set(my_list)  # 结果为 {1, 2, 3}

字典(dict)的转换

(1)从其他类型创建字典

从键值对列表创建字典

pairs = [("name", "Kimi"), ("age", 25)]
my_dict = dict(pairs)  # 结果为 {"name": "Kimi", "age": 25}

从两个列表创建字典

keys = ["name", "age"]
values = ["Kimi", 25]
my_dict = dict(zip(keys, values))  # 结果为 {"name": "Kimi", "age": 25}
(2)字典转其他类型

字典的键或值可以分别提取为列表:

my_dict = {"name": "Kimi", "age": 25}
keys = list(my_dict.keys())  # 结果为 ["name", "age"]
values = list(my_dict.values())  # 结果为 ["Kimi", 25]

特殊类型转换

(1)布尔类型(bool

将其他类型转换为布尔值

非零数字、非空字符串、非空列表等为 True

零、空字符串、空列表等为 False

print(bool(0))  # False
print(bool(10))  # True
print(bool(""))  # False
print(bool("hello"))  # True
print(bool([]))  # False
print(bool([1, 2, 3]))  # True
(2)复杂类型转换

JSON字符串与字典的转换

使用 json 模块:

import json# JSON字符串转字典
json_str = '{"name": "Kimi", "age": 25}'
my_dict = json.loads(json_str)  # 结果为 {"name": "Kimi", "age": 25}# 字典转JSON字符串
my_dict = {"name": "Kimi", "age": 25}
json_str = json.dumps(my_dict)  # 结果为 '{"name": "Kimi", "age": 25}'

相关文章:

Python 数据类型转换

目录 整数(int)与浮点数(float)之间的转换 (1)int():将浮点数或字符串转换为整数 (2)float():将整数或字符串转换为浮点数 字符串(str&#xf…...

进程概念、PCB及进程查看

文章目录 一.进程的概念进程控制块(PCB) 二.进程查看通过指令查看进程通过proc目录查看进程的cwd和exe获取进程pid和ppid通过fork()创建子进程 一.进程的概念 进程是一个运行起来的程序,而程序是存放在磁盘的,cpu要想执行程序的指…...

PyEcharts 数据可视化:从入门到实战

一、PyEcharts 简介 PyEcharts 是基于百度开源可视化库 ECharts 的 Python 数据可视化工具,支持生成交互式的 HTML 格式图表。相较于 Matplotlib 等静态图表库,PyEcharts 具有以下优势: 丰富的图表类型(30)动态交互功…...

RT-Thread+STM32L475VET6——ADC采集电压

文章目录 前言一、板载资源二、具体步骤1.打开CubeMX进行配置1.1 使用外部高速时钟,并修改时钟树1.2 打开ADC1的通道3,并配置为连续采集模式(ADC根据自己需求调整)1.3 打开串口1.4 生成工程 2. 配置ADC2.1 打开ADC驱动2.2 声明ADC2.3 剪切stm…...

easyexcel 2.2.6版本导出excel模板时,标题带下拉框及其下拉值过多不显示问题

需求背景&#xff1a;有一个需求要做下拉框的值有100多条&#xff0c;同时这个excel是一个多sheet的导入模板 直接用easyexcel 导出&#xff0c;会出现下拉框的值过多&#xff0c;导致生成出来的excel模板无法正常展示下拉功能 使用的easyexcel版本&#xff1a;<depende…...

树(数据结构·)

树&#xff08;数据结构篇&#xff09; 里面没有结点时&#xff0c;称之为空树 树型结构是一对多的形式 ​ ​ ​ ​ ​ ​ 深度优先遍历&#xff1a; 所谓的DFS&#xff0c;也就是说每次都尝试向更深的节点走&#xff0c;也就是一条路走到黑 当一条路走完&#xff0c;走到…...

XUnity.AutoTranslator-deepseek——调用腾讯的DeepSeek V3 API,实现Unity游戏中日文文本的自动翻译

XUnity.AutoTranslator-deepseek 本项目通过调用腾讯的DeepSeek V3 API&#xff0c;实现Unity游戏中日文文本的自动翻译。 准备工作 1. 获取API密钥 访问腾讯云API控制台申请DeepSeek的API密钥&#xff08;限时免费&#xff09;。也可以使用其他平台提供的DeepSeek API。 …...

谈谈 ES 6.8 到 7.10 的功能变迁(1)- 性能优化篇

前言 ES 7.10 可能是现在比较常见的 ES 版本。但是对于一些相迭代比较慢的早期业务系统来说&#xff0c;ES 6.8 是一个名副其实的“钉子户”。 借着工作内升级调研的任务东风&#xff0c;我整理从 ES 6.8 到 ES 7.10 ELastic 重点列出的新增功能和优化内容。将分为 6 个篇幅给…...

[250222] Kimi Latest 模型发布:尝鲜最新特性与追求稳定性的平衡 | SQLPage v0.33 发布

目录 Kimi Latest 模型发布&#xff1a;尝鲜最新特性与追求稳定性的平衡SQLPage v0.33 发布&#xff1a;使用 SQL 构建自定义 UI 和 API&#xff01; Kimi Latest 模型发布&#xff1a;尝鲜最新特性与追求稳定性的平衡 Kimi 开放平台推出全新模型 kimi-latest&#xff0c;旨在…...

深入理解设计模式之解释器模式

深入理解设计模式之解释器模式 在软件开发的复杂世界中,我们常常会遇到需要处理特定领域语言的情况。比如在开发一个计算器程序时,需要解析和计算数学表达式;在实现正则表达式功能时,要解析用户输入的正则表达式来匹配文本。这些场景都涉及到对特定语言的解释和执行,而解…...

深入理解设计模式之代理模式

深入理解设计模式之代理模式 在软件开发的复杂体系中&#xff0c;我们常常会遇到这样的情况&#xff1a;需要控制对某个对象的访问&#xff0c;或者在访问对象前后添加一些额外的处理逻辑&#xff0c;又或者希望在不改变原对象代码的基础上扩展其功能。代理模式&#xff08;Pr…...

Golang | 每日一练 (3)

&#x1f4a2;欢迎来到张胤尘的技术站 &#x1f4a5;技术如江河&#xff0c;汇聚众志成。代码似星辰&#xff0c;照亮行征程。开源精神长&#xff0c;传承永不忘。携手共前行&#xff0c;未来更辉煌&#x1f4a5; 文章目录 Golang | 每日一练 (3)题目参考答案map 实现原理hmapb…...

企业数据集成:实现高效调拨出库自动化

调拨出库对接调出单-v&#xff1a;旺店通企业奇门数据集成到用友BIP 在企业信息化管理中&#xff0c;数据的高效流转和准确对接是实现业务流程自动化的关键。本文将分享一个实际案例&#xff0c;展示如何通过轻易云数据集成平台&#xff0c;将旺店通企业奇门的数据无缝集成到用…...

提效10倍:基于Paimon+Dolphin湖仓一体新架构在阿里妈妈品牌业务探索实践

1. 业务背景 阿里妈妈品牌广告数据包括投放引擎、下发、曝光、点击等日志&#xff0c;面向运筹调控、算法特征、分析报表、诊断监控等应用场景&#xff0c;进行了品牌数仓能力建设。随着业务发展&#xff0c;基于Lambda架构的数仓开发模式&#xff0c;缺陷日益突出&#xff1a;…...

Deepseek快速做PPT

背景: DeepSeek大纲生成 → Kimi结构化排版 → 数据审查,细节调整 DeepSeek 拥有深度思考能力,擅长逻辑构建与内容生成,它会根据我们的问题进行思考,其深度思考能力当前测试下来,不愧为国内No.1,而且还会把中间的思考过程展示出来,大多时候会给出很多我们意想不到的思…...

论文解读 | AAAI'25 Cobra:多模态扩展的大型语言模型,以实现高效推理

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 点击 阅读原文 观看作者讲解回放&#xff01; 个人信息 作者&#xff1a;赵晗&#xff0c;浙江大学-西湖大学联合培养博士生 内容简介 近年来&#xff0c;在各个领域应用多模态大语言模型&#xff08;MLLMs&…...

uniapp修改picker-view样式

解决问题&#xff1a; 1.选中文案样式&#xff0c;比如字体颜色 2.修改分割线颜色 3.多列时&#xff0c;修改两边间距让其平分 展示效果&#xff1a; 代码如下 <template><u-popup :show"showPicker" :safeAreaInsetBottom"false" close&quo…...

HDFS Java 客户端 API

一、基本调用 Configuration 配置对象类&#xff0c;用于加载或设置参数属性 FileSystem 文件系统对象基类。针对不同文件系统有不同具体实现。该类封装了文件系统的相关操作方法。 1. maven依赖pom.xml文件 <dependency><groupId>org.apache.hadoop</groupId&g…...

【华三】STP的角色选举(一文讲透)

【华三】STP的角色选举 一、引言二、STP基础概念扫盲三、根桥选举过程详解四、根端口选举过程详解五、指定端口选举过程详解六、阻塞端口七、总结与配置建议七、附录**1. BPDU字段结构图&#xff08;文字描述&#xff09;****2. 华三STP常用命令速查表** 文章总结 一、引言 在…...

【C#零基础从入门到精通】(二十六)——C#三大特征-多态详解

【C#零基础从入门到精通】(二十六)——C#三大特征-多态详解 在 C# 中,多态是面向对象编程的重要特性之一,它允许不同的对象对同一消息做出不同的响应。多态可以分为静态多态和动态多态,下面将详细介绍它们以及各自包含的知识点。 多态概述 多态性使得代码更加灵活、可扩展…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天&#xff0c;再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至&#xff0c;这不仅是开发者的盛宴&#xff0c;更是全球数亿苹果用户翘首以盼的科技春晚。今年&#xff0c;苹果依旧为我们带来了全家桶式的系统更新&#xff0c;包括 iOS 26、iPadOS 26…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式&#xff1a;dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一&#xff0c;腐蚀跟膨胀属于反向操作&#xff0c;膨胀是把图像图像变大&#xff0c;而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

AirSim/Cosys-AirSim 游戏开发(四)外部固定位置监控相机

这个博客介绍了如何通过 settings.json 文件添加一个无人机外的 固定位置监控相机&#xff0c;因为在使用过程中发现 Airsim 对外部监控相机的描述模糊&#xff0c;而 Cosys-Airsim 在官方文档中没有提供外部监控相机设置&#xff0c;最后在源码示例中找到了&#xff0c;所以感…...

【LeetCode】算法详解#6 ---除自身以外数组的乘积

1.题目介绍 给定一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O…...

保姆级【快数学会Android端“动画“】+ 实现补间动画和逐帧动画!!!

目录 补间动画 1.创建资源文件夹 2.设置文件夹类型 3.创建.xml文件 4.样式设计 5.动画设置 6.动画的实现 内容拓展 7.在原基础上继续添加.xml文件 8.xml代码编写 (1)rotate_anim (2)scale_anim (3)translate_anim 9.MainActivity.java代码汇总 10.效果展示 逐帧…...

Visual Studio Code 扩展

Visual Studio Code 扩展 change-case 大小写转换EmmyLua for VSCode 调试插件Bookmarks 书签 change-case 大小写转换 https://marketplace.visualstudio.com/items?itemNamewmaurer.change-case 选中单词后&#xff0c;命令 changeCase.commands 可预览转换效果 EmmyLua…...

大数据治理的常见方式

大数据治理的常见方式 大数据治理是确保数据质量、安全性和可用性的系统性方法&#xff0c;以下是几种常见的治理方式&#xff1a; 1. 数据质量管理 核心方法&#xff1a; 数据校验&#xff1a;建立数据校验规则&#xff08;格式、范围、一致性等&#xff09;数据清洗&…...