当前位置: 首页 > 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、本组件支持查询条件动态…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

springboot 百货中心供应链管理系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;百货中心供应链管理系统被用户普遍使用&#xff0c;为方…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

【大模型RAG】Docker 一键部署 Milvus 完整攻略

本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装&#xff1b;只需暴露 19530&#xff08;gRPC&#xff09;与 9091&#xff08;HTTP/WebUI&#xff09;两个端口&#xff0c;即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...

srs linux

下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935&#xff0c;SRS管理页面端口是8080&#xff0c;可…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的&#xff0c;比GNOME简单得多&#xff01; 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

三体问题详解

从物理学角度&#xff0c;三体问题之所以不稳定&#xff0c;是因为三个天体在万有引力作用下相互作用&#xff0c;形成一个非线性耦合系统。我们可以从牛顿经典力学出发&#xff0c;列出具体的运动方程&#xff0c;并说明为何这个系统本质上是混沌的&#xff0c;无法得到一般解…...

MySQL用户和授权

开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务&#xff1a; test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...