百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

python内置数据类型的转换与第三方库的数据转换函数

off999 2024-09-13 13:36 33 浏览 0 评论

Python中常用的数据类型包括整数(int)、浮点数(float)、字符串(str)、布尔值(bool)、列表(list)、元组(tuple)、字典(dict)等。有时候我们需要将一种数据类型转换成另一种数据类型,可以使用Python中的类型转换函数。

  1. 整数转换函数int()

将其他数据类型转换成整数类型。如果是浮点数,则只保留整数部分。如果是字符串,则字符串必须是纯数字字符串才能转换成整数,否则会报错。

a = 5.8
b = "10"
c = "10.5"

print(int(a))   # 5
print(int(b))   # 10
print(int(c))   # 报错:ValueError: invalid literal for int() with base 10: '10.5'
  1. 浮点数转换函数float()

将其他数据类型转换成浮点数类型。如果是整数,则转换成对应的浮点数。如果是字符串,则字符串必须是数字字符串才能转换成浮点数,否则会报错。

a = 5
b = "10.5"
c = "hello"

print(float(a))   # 5.0
print(float(b))   # 10.5
print(float(c))   # 报错:ValueError: could not convert string to float: 'hello'
  1. 字符串转换函数str()

将其他数据类型转换成字符串类型。转换后的字符串与原始数据类型的表达式相同。

a = 5
b = 3.2
c = True

print(str(a))   # '5'
print(str(b))   # '3.2'
print(str(c))   # 'True'
  1. 布尔值转换函数bool()

将其他数据类型转换成布尔值类型。如果转换的数据类型是0、空字符串、空列表、空元组、空字典等,则转换成False,否则转换成True。

a = 0
b = ""
c = []
d = ()

print(bool(a))   # False
print(bool(b))   # False
print(bool(c))   # False
print(bool(d))   # False

e = 1
f = "hello"
g = [1, 2]
h = (1, 2)
i = {"name": "Tom"}

print(bool(e))   # True
print(bool(f))   # True
print(bool(g))   # True
print(bool(h))   # True
print(bool(i))   # True

需要注意的是,在将浮点数转换成整数时,会直接舍去小数部分而不是四舍五入;在将字符串转换成数字类型时,如果字符串中含有非数字字符,会导致转换失败。因此,在进行类型转换时,需要根据实际情况进行数据校验。

5、列表、元、字典组之间的转换

可以使用Python内置的list()、tuple()、dict()函数将列表、元组、字典之间进行相互转换。

将列表转换成元组:

a = [1, 2, 3]
b = tuple(a)
print(b)   # (1, 2, 3)

将元组转换成列表:

a = (1, 2, 3)
b = list(a)
print(b)   # [1, 2, 3]

将字典的键和值分别转换成列表:

a = {"name": "Tom", "age": 18}
keys = list(a.keys())
values = list(a.values())
print(keys)   # ['name', 'age']
print(values)   # ['Tom', 18]

将列表和值两两对应转换成字典:

keys = ['name', 'age']
values = ['Tom', 18]
a = dict(zip(keys, values))
print(a)   # {'name': 'Tom', 'age': 18}
  1. 其他类型转换函数

在Python的内置模块中,还提供了一些其他类型的转换函数。

将二进制数转换成十进制数:

a = "0b1010"
b = int(a, 2)
print(b)   # 10

将八进制数转换成十进制数:

a = "0o12"
b = int(a, 8)
print(b)   # 10

将十六进制数转换成十进制数:

a = "0xA"
b = int(a, 16)
print(b)   # 10

将字符编码转换成字符:

a = 65
b = chr(a)
print(b)   # 'A'

将字符转换成字符编码:

a = 'A'
b = ord(a)
print(b)   # 65

以上就是Python中常用的数据类型转换函数。在实际编程中,对于数据类型的转换需要谨慎操作,需要根据具体的需求选择合适的数据类型转换函数,以避免出现错误和意外的情况。

7、Pandas库中的to_numeric()函数,可以将字符串、浮点数等类型的数据转换成数值类型。

import pandas as pd

a = ["1", "2", "3"]
b = pd.to_numeric(a)
print(b)   # [1, 2, 3]

8、NumPy库中的astype()函数,可以将数组中的数据转换成指定的数据类型。

import numpy as np

a = np.array([1, 2, 3])
b = a.astype(float)
print(b)   # [1. 2. 3.]

9、Matplotlib库中的text()函数,可以将数值类型的数据转换成字符串类型,用于在图表中添加注释。

import matplotlib.pyplot as plt

x = [1, 2, 3]
y = [4, 5, 6]
plt.plot(x, y)
plt.text(1.5, 5, str((2, 5)), fontsize=12)
plt.show()

总之,第三方库中的数据类型转换函数通常都是针对特定的需求而设计的,可以帮助我们更加方便地进行数据处理和分析。

相关推荐

实战:用 Python+Flask+Echarts 构建电商实时数据大屏

在电商运营中,实时掌握销售趋势、用户行为等核心数据是决策的关键。本文将从实战角度,详解如何用Python+Flask+Echarts技术栈,快速搭建一个支持实时更新、多维度可视化的电商数据大屏,帮...

DeepSeek完全使用手册:从新手到高手的2000字实操指南

一、工具定位与核心功能矩阵(200字)DeepSeek是一款专注于深度推理的强大AI助手,其功能丰富多样,可归纳为4大能力象限:plaintext差异化优势:DeepSeek支持最长达16Ktok...

Python绘制可爱的图表 cutecharts

一个很酷的python手绘样式可视化包——可爱的图表cutecharts。Cutecharts非常适合为图表提供更个性化的触感。Cutecharts与常规的Matplotlib和Seabo...

第十二章:Python与数据处理和可视化

12.1使用pandas进行数据处理12.1.1理论知识pandas是Python中最常用的数据处理库之一,它提供了高效的数据结构和数据分析工具。pandas的核心数据结构是Serie...

5分钟就能做一个Excel动态图表,你确定不学学?(纯gif教学)

本文说明下图是一个比较酷炫的Excel动态图表,最难的部分就是用到了一个复选框控件。其实这个控件我很早就见过,但是不会用呀!望洋兴叹。这次呢,我也是借着这个文章为大家讲述一下这个控件的使用。本文没有...

Python数据可视化:从Pandas基础到Seaborn高级应用

数据可视化是数据分析中不可或缺的一环,它能帮助我们直观理解数据模式和趋势。本文将全面介绍Python中最常用的三种可视化方法。Pandas内置绘图功能Pandas基于Matplotlib提供了简洁的绘...

如何使用 Python 将图表写入 Excel

将Python生成的图表写入Excel文件是数据分析和可视化中常见的需求。Python提供了多种库(如matplotlib、openpyxl和xlsxwriter)来实现这一功能。本文...

Excel 图表制作太痛苦?用 Python 生成动态交互图表

做个动态图表花了3小时?你该换方法了!上周帮销售部做季度汇报图表,Excel操作把我整崩溃了——插入折线图后发现数据源选错,重新选择又得调格式想做动态筛选图表,捣鼓"开发工具"...

Python Matplotlib 入门教程:可视化数据的基石

一、简介Matplotlib是Python中最流行的数据可视化库,提供从简单折线图到复杂3D图形的完整解决方案。其核心优势在于:o灵活性强:支持像素级样式控制o兼容性好:与NumPy、Pa...

20种Python数据可视化绘图 直接复制可用

本文介绍20种python数据绘图方法,可直接用于科研绘图或汇报用图。1.折线图(LinePlot)-描述数据随时间或其他变量的变化。importmatplotlib.pyplotasp...

Python os模块完全指南:轻松玩转文件管理与系统操作

Pythonos模块完全指南:轻松玩转文件管理与系统操作os模块是Python与操作系统对话的"瑞士军刀",学会它能让你轻松管理文件、操控路径、获取系统信息。本教程通过场景化案例+...

Python中h5py与netCDF4模块在Anaconda环境的下载与安装

本文介绍基于Anaconda环境,下载并安装Python中h5py与netCDF4这两个模块的方法。h5py与netCDF4这两个模块是与遥感图像处理、地学分析等GIS操作息息相关的模块,应用...

python中的模块、库、包有什么区别?

一文带你分清Python模块、包和库。一、模块Python模块(Module),是一个Python文件,以.py结尾,包含了Python对象定义和Python语句。模块能定义函数,类和变...

centos7 下面使用源码编译的方式安装python3.11

centos7下面使用源码编译的方式安装python3.11,步骤如下:cd/root#只是将python3.11的安装包下载到/root目录下wgethttps://www.python.o...

Python其实很简单 第十四章 模块

模块是一组程序代码,可以是别人已经写好的,也可以是自己编写的,但都是已经存在的,在编程时直接使用就可以了。模块机制的最大好处就是程序员不再编写重复的代码,而直接利用已有的成果,这样就能将更多的精力投入...

取消回复欢迎 发表评论: