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

一文搞懂 Python 3 中的数据类型

介绍

在 Python 中,与所有编程语言一样,数据类型用于对一种特定类型的数据进行分类。这很重要,因为您使用的特定数据类型将决定您可以为其分配哪些值以及您可以对其执行哪些操作(包括可以对其执行哪些操作)。

1. 数字

您在 Python 中输入的任何数字都将被解释为数字;您不需要声明要输入的数据类型类型。Python 会将任何不带小数的数字视为整数(如 138 ),将任何用小数写入的数字视为浮点数(如 138.0 )。

整数

与数学一样,计算机编程中的整数是整数,可以是正数、负数或 0 (…, , , , -1 0 1 …)。整数也可以称为 int .与其他编程语言一样,不应在四位数或更多数字中使用逗号,因此当您在程序中写入 1,000 时,请将其写成 1000 .

我们可以像这样打印出一个整数:

print(-25)

或者,我们可以声明一个变量,在这种情况下,它本质上是我们正在使用或操作的数字的符号,如下所示:

my_int = -25
print(my_int)

我们也可以在 Python 中使用整数进行数学运算:

int_ans = 116 - 68
print(int_ans)

浮点数

浮点数可以是可以包含小数部分的数字,例如 9.0-116.42

就像我们对整数所做的那样,我们可以打印出一个浮点数,如下所示:

print(17.3)

我们还可以声明一个代表浮点数的变量,如下所示:

my_flt = 17.3
print(my_flt)

而且,就像整数一样,我们也可以在 Python 中使用浮点数进行数学运算:

flt_ans = 564.0 + 365.24
print(flt_ans)

对于整数和浮点数,重要的是要记住 3 ≠ 3.0,因为 3 指的是整数,而 3.0 指的是浮点数。

2. 布尔值

Boolean 数据类型可以是以下两个值之一:TrueFalse。布尔值用于表示与数学逻辑分支相关的真值。

数学中的许多运算都为我们提供了计算为 TrueFalse 的答案:

  • 大于
    • 500 > 100: True
    • 1 > 5: False
  • 小于
    • 200 < 400: False
    • 4 > 2: False
  • 平等
    • 5 = 5: True
    • 500 = 400: False

与数字一样,我们可以将布尔值存储在变量中:

my_bool = 5 > 8

然后,我们可以通过调用函数 print() 来打印布尔值:

print(my_bool)

输出:

False

3. 字符串

字符串是一个或多个字符(字母、数字、符号)的序列,可以是常量,也可以是变量。在 Python 中,字符串存在于单引号 ' 或双引号 "中,因此要创建字符串,请将一系列字符括在引号 " 中:

'This is a string in single quotes.'

您可以选择使用单引号或双引号,但无论您决定使用哪种引号,都应该在程序中保持一致。

基本程序 “Hello, World!” 演示了如何在计算机编程中使用字符串,因为组成短语的字符 Hello, World! 是字符串。

print("Hello, World!")

与其他数据类型一样,我们可以将字符串存储在变量中:

hw = "Hello, World!"

并通过调用变量打印出字符串:

print(hw)

输出:

Hello, World!

像数字一样,我们可以在程序中对字符串执行许多操作,以便操纵它们以实现我们想要的结果。比如字符串连接、字符替换等。

4. 列表

列表是可变的有序元素序列。列表中的每个元素或值都称为一个项。正如字符串被定义为引号之间的字符一样,列表是通过在方括号 [] 之间插入值来定义。

整数列表如下所示:

[-3, -2, -1, 0, 1, 2, 3]

浮点列表如下所示:

[3.14, 9.23, 111.11, 312.12, 1.05]

字符串列表:

['shark', 'cuttlefish', 'squid', 'mantis shrimp']

如果我们将字符串列表定义为 sea_creatures

sea_creatures = ['shark', 'cuttlefish', 'squid', 'mantis shrimp']

我们可以通过调用变量来打印它们:

print(sea_creatures)

输出看起来与我们创建的列表完全相同:

['shark', 'cuttlefish', 'squid', 'mantis shrimp']

列表是一种非常灵活的数据类型,因为它们是可变的,因为它们可以添加、删除和更改值。有一种数据类型类似于列表,但无法更改,称为元组。

5. 元组

元组用于对数据进行分组。它是一个不可变或不可更改的有序元素序列。

元组与列表非常相似,但它们使用括号 ( ) 而不是方括号,并且由于它们是不可变的,因此无法修改其值。

元组如下所示:

('blue coral', 'staghorn coral', 'pillar coral')

我们可以将元组存储在变量中并打印出来:

coral = ('blue coral', 'staghorn coral', 'pillar coral')
print(coral)

输出:

('blue coral', 'staghorn coral', 'pillar coral')

与其他数据类型一样,Python 打印出元组,就像我们输入它一样,括号包含一系列值。

6. 字典

字典是 Python 的内置映射类型。这意味着字典将键映射到值,这些键值对是在 Python 中存储数据的有用方法。字典的两侧 { } 都是用大括号构成的。

字典通常用于保存相关的数据,例如 ID 中包含的信息,如下所示:

{'name': 'Sammy', 'animal': 'shark', 'color': 'blue', 'location': 'ocean'}

您会注意到,除了大括号外,整个字典中还有冒号。冒号左边的单词是键。键可以由任何不可变的数据类型组成。上面字典中的键是: ‘name’, ‘animal’, ‘color’, ‘location’ 。

冒号右边的单词是值。值可以由任何数据类型组成。上面字典中的值是: ‘Sammy’, ‘shark’, ‘blue’, ‘ocean’ 。

像其他数据类型一样,让我们将字典存储在变量中,然后打印出来:

sammy = {'name': 'Sammy', 'animal': 'shark', 'color': 'blue',  'location': 'ocean'}
print(sammy)

输出:

{'color': 'blue', 'animal': 'shark', 'name': 'Sammy', 'location': 'ocean'}

字典用于存储键值对,是非常常用的一种数据类型。

相关文章:

一文搞懂 Python 3 中的数据类型

介绍 在 Python 中&#xff0c;与所有编程语言一样&#xff0c;数据类型用于对一种特定类型的数据进行分类。这很重要&#xff0c;因为您使用的特定数据类型将决定您可以为其分配哪些值以及您可以对其执行哪些操作&#xff08;包括可以对其执行哪些操作&#xff09;。 1. 数字…...

学习笔记之——3D Gaussian Splatting源码解读

之前博客对3DGS进行了学习与调研 学习笔记之——3D Gaussian Splatting及其在SLAM与自动驾驶上的应用调研-CSDN博客文章浏览阅读450次。论文主页3D Gaussian Splatting是最近NeRF方面的突破性工作&#xff0c;它的特点在于重建质量高的情况下还能接入传统光栅化&#xff0c;优…...

Flink standalone集群部署配置

文章目录 简介软件依赖部署方案二、安装1.下载并解压2.ssh免密登录3.修改配置文件3.启动集群4.访问 Web UI 简介 Flink独立模式&#xff08;Standalone&#xff09;是部署 Flink 最基本也是最简单的方式&#xff1a;所需要的所有 Flink 组件&#xff0c; 都只是操作系统上运行…...

Python: + 运算符、append() 方法和 extend()方法的区别和用法

在Python中&#xff0c;有几种常见的方式可以向列表中添加元素&#xff0c;其中包括使用 运算符、append() 方法和 extend() 方法。 使用 运算符&#xff1a; 运算符用于合并两个列表。 通过创建一个新列表&#xff0c;包含两个被合并的列表的元素。不会修改原始列表&…...

【MySQL】mysql集群

文章目录 一、mysql日志错误日志查询日志二进制日志慢查询日志redo log和undo log 二、mysql集群主从复制原理介绍配置命令 读写分离原理介绍配置命令 三、mysql分库分表垂直拆分水平拆分 一、mysql日志 MySQL日志 是记录 MySQL 数据库系统运行过程中不同事件和操作的信息的文件…...

zabbix监控windows主机

下载安装zabbix agent安装包 Zabbix官网下载地址: https://www.zabbix.com/cn/download_agents?version5.0LTS&release5.0.40&osWindows&os_versionAny&hardwareamd64&encryptionOpenSSL&packagingMSI&show_legacy0 这里使用zabbix agent2 安装 …...

单例模式的八种写法、单例和并发的关系

文章目录 1.单例模式的作用2.单例模式的适用场景3.饿汉式静态常量&#xff08;可用&#xff09;静态代码块&#xff08;可用&#xff09; 4.懒汉式线程不安全&#xff08;不可用&#xff09;同步方法&#xff08;线程安全&#xff0c;但不推荐用&#xff09;同步代码块&#xf…...

基于实时Linux+FPGA实现NI CompactRIO系统详解

利用集成的软件工具链&#xff0c;结合信号调理I/O模块&#xff0c;轻松构建和部署实时应用程序。 什么是CompactRIO&#xff1f; CompactRIO系统提供了高处理性能、传感器专用I/O和紧密集成的软件工具&#xff0c;使其成为工业物联网、监测和控制应用的理想之选。实时处理器提…...

Webhook端口中的自定义签名身份认证

概述 如果需要通过 Webhook 端口从交易伙伴处接收数据&#xff0c;但该交易伙伴可能对于安全性有着较高的要求&#xff0c;而不仅仅是用于验证入站 Webhook 要求的基本身份验证用户名/密码&#xff0c;或者用户可能只想在入站 Webhook 消息上增加额外的安全层。 使用 Webhook…...

用Linux的视角来理解缓冲区概念

缓冲区的认识 缓冲区&#xff08;buffer&#xff09;是存储数据的临时存储区域。当我们用C语言向文件中写入数据时&#xff0c;数据并不会直接的写到文件中&#xff0c;中途还经过了缓冲区&#xff0c;而我们需要对缓冲区的数据进行刷新&#xff0c;那么数据才算写到文件当中。…...

C#中Enumerable.Range(Int32, Int32) 方法用于计算

目录 一、关于Enumerable.Range(Int32, Int32) 方法 1.定义 2.Enumerable.Range(&#xff09;用于数学计算的操作方法 3.实例1&#xff1a;显示整型数1~9的平方 4.实例2&#xff1a;显示整型数0~9 5.实例3&#xff1a;Enumerable.Range(&#xff09;vs for循环 &#x…...

Linux和windows进程同步与线程同步那些事儿(四):windows 下进程同步

Linux和windows进程同步与线程同步那些事儿&#xff08;一&#xff09; Linux和windows进程同步与线程同步那些事儿&#xff08;二&#xff09;&#xff1a; windows线程同步详解示例 Linux和windows进程同步与线程同步那些事儿&#xff08;三&#xff09;&#xff1a; Linux线…...

1. Logback介绍

Logback介绍 Logback旨在成为流行的log4j项目的继任者。它由Ceki Glc设计&#xff0c;他是log4j的创始人。它基于十年在设计工业级日志系统方 面的经验。结果产品&#xff0c;即logback&#xff0c;比所有现有的日志系统更快&#xff0c;具有更小的占用空间&#xff0c;有时差距…...

SqueezeNet:通过紧凑架构彻底改变深度学习

一、介绍 在深度学习领域&#xff0c;对效率和性能的追求往往会带来创新的架构。SqueezeNet 是神经网络设计的一项突破&#xff0c;体现了这种追求。本文深入研究了 SqueezeNet 的复杂性&#xff0c;探讨其独特的架构、设计背后的基本原理、应用及其对深度学习领域的影响。 在创…...

Python:正则表达式之re.group()用法

Python正则表达式之re.group()用法学习笔记 正则表达式是在处理字符串时非常有用的工具&#xff0c;而re.group()是在匹配到的文本中提取特定分组内容的方法之一。 1. re.group()的基本用法 在正则表达式中&#xff0c;通过圆括号可以创建一个或多个分组。re.group()用于获取…...

Shiro框架:Shiro登录认证流程源码解析

目录 1.用户登录认证流程 1.1 生成认证Token 1.2 用户登录认证 1.2.1 SecurityManager login流程解析 1.2.1.1 authenticate方法进行登录认证 1.2.1.1.1 单Realm认证 1.2.1.2 认证通过后创建登录用户对象 1.2.1.2.1 复制SubjectContext 1.2.1.2.2 对subjectContext设…...

WEB前端人机交互导论实验-实训2格式化文本、段落与列表

1.项目1 文本与段落标记的应用&#xff1a; A.题目要求: B.思路&#xff1a; &#xff08;1&#xff09;首先&#xff0c;HTML文档的基本结构是通过<html>...</html>标签包围的&#xff0c;包含了头部信息和页面主体内容。 &#xff08;2&#xff09;在头部信息…...

Python:list列表与tuple元组的区别

在Python中&#xff0c;List&#xff08;列表&#xff09; 和Tuple&#xff08;元组&#xff09; 都是用于存储一组有序元素的数据结构&#xff0c;但它们有一些关键的区别&#xff0c;包括可变性、性能、语法等方面。 1. List&#xff08;列表&#xff09; 用法&#xff1a;…...

如何基于 Gin 封装出属于自己 Web 框架?

思路 在基于 Gin 封装出属于自己的 Web 框架前&#xff0c;你需要先了解 Gin 的基本用法和设计理念。 然后&#xff0c;你可以通过以下步骤来封装自己的 Web 框架&#xff1a; 封装路由&#xff1a;Gin 的路由是通过 HTTP 方法和 URL 路径进行匹配的&#xff0c;你可以根据自己…...

VUE element-ui实现表格动态展示、动态删减列、动态排序、动态搜索条件配置、表单组件化。

1、实现效果 1.1、文件目录 1.2、说明 1、本组件支持列表的表头自定义配置&#xff0c;checkbox实现 2、本组件支持列表列排序&#xff0c;vuedraggable是拖拽插件&#xff0c;上图中字段管理里的拖拽效果 &#xff0c;需要的话请自行npm install 3、本组件支持查询条件动态…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

质量体系的重要

质量体系是为确保产品、服务或过程质量满足规定要求&#xff0c;由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面&#xff1a; &#x1f3db;️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限&#xff0c;形成层级清晰的管理网络&#xf…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要&#xff1a;设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP&#xff08;Work-in-Progress&#xff09;弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中&#xff0c;设立专门的紧急任务通道尤为重要&#xff0c;这能…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行

项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战&#xff0c;克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

jdbc查询mysql数据库时,出现id顺序错误的情况

我在repository中的查询语句如下所示&#xff0c;即传入一个List<intager>的数据&#xff0c;返回这些id的问题列表。但是由于数据库查询时ID列表的顺序与预期不一致&#xff0c;会导致返回的id是从小到大排列的&#xff0c;但我不希望这样。 Query("SELECT NEW com…...

Spring AOP代理对象生成原理

代理对象生成的关键类是【AnnotationAwareAspectJAutoProxyCreator】&#xff0c;这个类继承了【BeanPostProcessor】是一个后置处理器 在bean对象生命周期中初始化时执行【org.springframework.beans.factory.config.BeanPostProcessor#postProcessAfterInitialization】方法时…...

Python的__call__ 方法

在 Python 中&#xff0c;__call__ 是一个特殊的魔术方法&#xff08;magic method&#xff09;&#xff0c;它允许一个类的实例像函数一样被调用。当你在一个对象后面加上 () 并执行时&#xff08;例如 obj()&#xff09;&#xff0c;Python 会自动调用该对象的 __call__ 方法…...

第22节 Node.js JXcore 打包

Node.js是一个开放源代码、跨平台的、用于服务器端和网络应用的运行环境。 JXcore是一个支持多线程的 Node.js 发行版本&#xff0c;基本不需要对你现有的代码做任何改动就可以直接线程安全地以多线程运行。 本文主要介绍JXcore的打包功能。 JXcore 安装 下载JXcore安装包&a…...

java+webstock

maven依赖 <dependency><groupId>org.java-websocket</groupId><artifactId>Java-WebSocket</artifactId><version>1.3.5</version></dependency><dependency><groupId>org.apache.tomcat.websocket</groupId&…...

uniapp获取当前位置和经纬度信息

1.1. 获取当前位置和经纬度信息&#xff08;需要配置高的SDK&#xff09; 调用uni-app官方API中的uni.chooseLocation()&#xff0c;即打开地图选择位置。 <button click"getAddress">获取定位</button> const getAddress () > {uni.chooseLocatio…...