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

news2024/9/28 17:30:01

@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)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Flask+Mysql项目docker-compose部署(Pythondocker-compose详细步骤)

一、前言 环境: Linux、docker、docker-compose、python(Flask)、Mysql 简介: 简单使用Flask框架写的查询Mysql数据接口,使用docker部署,shell脚本启动 优势: 采用docker方式部署更加便于维护,更加简单快…

多维时序 | MATLAB实CNN-Mutilhead-Attention卷积神经网络融合多头注意力机制多变量时间序列预测

多维时序 | MATLAB实CNN-Mutilhead-Attention卷积神经网络融合多头注意力机制多变量时间序列预测 目录 多维时序 | MATLAB实CNN-Mutilhead-Attention卷积神经网络融合多头注意力机制多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 多维时序 | …

CUMT--Java复习--文件及IO流

目录 一、文件 1、文件系统和路径 2、File类 3、FilenameFilter接口 二、IO流 1、流的分类 2、流的体系结构 三、字节流 1、InputStream 2、OutputStream 四、字符流 1、Reader 2、Writer 五、过滤流和转换流 1、过滤流 2、转换流 六、序列化 1、对象序列化…

继承易错总结

1.继承会将所有的成员继承下来,但是继承方式限定的是继承下来成员的可见类型(如果是private继承,那么他不论哪里都是不可见的;如果是protected继承在类中是可见的,在类外是不可见的;如果是public继承,在任何…

[机器人-2]:开源MIT Min cheetah机械狗设计(二):机械结构设计

目录 1、四肢朝向的选择 2、电机布局形式的选择 3、电机的选型及测试(非常重要) 4、结构优化 5、尺寸效应 6、其他 1、四肢朝向的选择 机械狗的结构设计,第一个摆在我们面前的就说四肢的朝向问题,如下图,我们是…

白龙地铁消费项目(地铁消费系统,包括用户端、管理端)

大一学的C#可视化项目文件,所有功能均可使用。可以直接下载 下方是演示照片

Vue 3 Composition API:让组件开发更高效、灵活(上)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

修改第三方npm包

文章目录 一、前言二、补丁方案2.1、patch-package2.2、pnpm patch 三、换日方案四、总结五、最后 一、前言 在开发过程中,发现某个npm包有Bug,应该怎么办?可以试试下面这2种方案: 代码量少,可以直接修改npm包代码的&…

【计算机四级(网络工程师)笔记】操作系统运行机制

目录 一、中央处理器(CPU) 1.1CPU的状态 1.2指令分类 二、寄存器 2.1寄存器分类 2.2程序状态字(PSW) 三、系统调用 3.1系统调用与一般过程调用的区别 3.2系统调用的分类 四、中断与异常 4.1中断 4.2异常 🌈嗨&#xff…

【LeetCode】每日一题 2023_12_25 不浪费原料的汉堡制作方案(数学,解二元一次方程)

文章目录 刷题前唠嗑题目:不浪费原料的汉堡制作方案题目描述代码与解题思路 结语 刷题前唠嗑 LeetCode?启动!!! 题目:不浪费原料的汉堡制作方案 题目链接:1276. 不浪费原料的汉堡制作方案 题…

详解—数据结构—<常用排序>基本实现和代码分析

目录 一.排序的概念及其运用 1.1排序的概念 1.2排序运用​编辑 1.3 常见的排序算法​编辑 二.常见排序算法的实现 2.1 插入排序 2.1.1基本思想: 2.1.2直接插入排序: 2.1.3 希尔排序( 缩小增量排序 ) 2.2 选择排序 2.2.1基本思想: …

大模型工具:LangChain 原理与实战案例

LangChain 是什么? LangChain是一个用于开发由语言模型驱动的应用程序的框架。它使得可以构建以下类型的应用程序: 数据感知:将语言模型与其他数据源连接起来 智能:允许语言模型与其环境进行交互 LangChain的主要价值在于&…

【JavaSE】Java进阶知识一(泛型详解,包括泛型方法,协变,逆变,擦除机制)

目录 泛型 1. 什么是泛型 2.泛型方法 3.通配符上界(泛型的协变) 4.通配符下界(泛型的逆变) 5.泛型的编译(擦除机制) 泛型 泛型:就是让一个类能适用于多个类型,就是在封装数据结…

前端---vscode 的基本使用

1. vscode 的基本介绍 全拼是 Visual Studio Code (简称 VS Code) 是由微软研发的一款免费、开源的跨平台代码编辑器,目前是前端(网页)开发使用最多的一款软件开发工具。 2. vscode 的安装 下载网址: Download Visual Studio Code - Mac, Linux, Windows选择对应…

PyQt5和Qt designer的详细安装教程

Qt designer界面和所有组件功能的详细介绍参考:https://blog.csdn.net/qq_43811536/article/details/135186862?spm1001.2014.3001.5501 目录 0. 写在前面1. Anaconda创建虚拟环境2. 安装PyQt5和Qt designer3. 测试安装成功 0. 写在前面 Qt Designer是Qt提供的一种…

Tiny Object Detection

文章目录 RFLA: Gaussian Receptive Field based Label Assignment for Tiny Object Detection(ECCV2022)Dynamic Coarse-to-Fine Learning for Oriented Tiny Object Detection(CVPR2023)TOD-CMLNN(2023) …

RK3568平台开发系列讲解(Linux系统篇)Linux 热拔插机制 mdev的使能

🚀返回专栏总目录 文章目录 一、什么是热插拔二、热插拔的机制三、mdev的开启沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍 Linux 热拔插。 一、什么是热插拔 热插拔是指在设备运行的情况下,能够安全地插入或拔出硬件设备,而无需关闭或重启系统。这意…

关于Nacos各日志以及解决Nacos中疯狂输出日志的问题

目录 前言1. 各日志内容2. 日志解析2.1 服务端日志2.2 客户端日志 前言 越来越发觉硬盘不够用,发现是运行了2年的Nacos中存了很多log日志,具体如下: 于是得了解下各个日志中的作用,防止不必要的输出占用硬盘空间! …

Web前端-JavaScript(Dom高级)

文章目录 1.1 自定义属性操作1.1.1 获取属性值1.1.2 设置属性值1.1.3 移除属性值1.1.4 案例一 1.2 节点操作1.2.1 节点概述1.2.2 节点层级1.2.3 父级节点1.2.4 子节点1.2.5 兄弟节点1.2.6 创建节点1.2.7 添加节点1.2.8 删除节点1.2.9 案例二1.2.10 创建元素的三种方式(了解) 1.…

LabVIEW在横向辅助驾驶系统开发中的应用

LabVIEW在横向辅助驾驶系统开发中的应用 随着横向辅助驾驶技术的快速发展,越来越多的研究致力于提高该系统的效率和安全性。项目针对先进驾驶辅助系统(ADAS)中的横向辅助驾驶进行深入研究。在这项研究中,LabVIEW作为一个强大的系…