Python数据类型详解:从字符串到布尔值,一网打尽

article/2025/8/2 22:59:54

Python是现代编程语言中非常流行的一种,它的语法简洁、易懂,非常适合初学者。而在Python编程中,“数据类型”是最基础也是最重要的概念。理解这个概念,将为你之后的编程打下坚实的基础。

1. 什么是数据类型?

在Python中,数据可以分为多种类型:

  • 字符串(string):一串字符,用单引号或双引号及三个单双括起来,例如,'你好呀' 或 "hello"
  • 用途:处理文本信息,比如名字、地址、文章内容等,主要是为了增加灵活性和方便在不同场景下使用

下面是已知的所有字符串写法,一般第一二种最常用:

里面可以写任何东西 包括数字、小数点、字母等等

常见操作

  • 拼接:将两个字符串连接在一起
greeting = 'Hello' + ' World' 
print(greeting)  # 输出: Hello World

  • 格式化:使用 f-string 或 .format() 方法插入变量等
  • f-string插入 也就是通过填充的方式进行插入 在字符串的前面使用 f 声明插入的位置 {}大括号里面传递 变量名、字符串、数字、布尔等等
name = "小武" 
print(f"Hello, {name}") # 输出: Hello, 小武
  • .format() 方法
  • 使用 {} 声明插入的位置 format() 括号里面传递传递 变量名、字符串、数字、布尔等等
name='你好 我叫{}'.format('小武')
print(name) # 输出:你好 我叫小武

  • 切片:获取字符串的子串
  • 使用[]进行切片 [0:3]表示 从第0为开始获取数据(在py中第0位表示第一位) 3表示到第三位暂停获取 (不包含他)3-0=3表示获取到3为数据
text = "Python" 
print(text[0:3]) # 输出: Pyt

  • 假如[1:5] py从0开始计算 1表示从第2位开始获取 一直到第五位 5-1=4 获取四位数据

输出结果为: ytho

如何知道这个字符串多长呢?可以使用len()方法查询 用法:len(变量名)

PS:假如变量 text = "Python" 使用切片[0:10] 我们通过len()方法知道这个变量最长就6位 我们写10的话那就是表示获取全部 不会报错

  • 数字(Number):包括整数(int)和浮点数(float)简称小数点 例如:18 或 18.5
  • 用途:用于计数、数学运算等场景。

常见操作

  • 加法:+
sum_result = 5 + 3 
print(sum_result) # 输出: 8
  • 除法:/(返回浮点数)和 //(返回整数)
division_result = 7 / 2  #使用print方法输出结果为 3.5
division_result2 = 7 // 2   #输出结果为3 因为//只会返回整数 不会返回小数
  • 幂运算:** 2**3表示 三个2相乘的值 2x2x2=8
power_result = 2 ** 3
print(power_result)      #输出: 8

  • 布尔值(Boolean:代表真或假的值,只有两个值,True 或 False 真表示True 假表示False
  • 用途:用于条件判断、逻辑运算

用途:用于控制程序流程的条件判断、逻辑运算等。

常见操作

  • 与运算:and 两边都进行比较 有一个是假(False)就输出False就
  • 抽象理解:and很正义,两边都是对的才会表示True
result = True and False # 输出: False

  • 或运算:or 有一边是真的就输出 True 否则输出False
  • 抽象理解:有一边给好处就表示正确
result = True or False # 输出: True

  • 非运算:not 取相反的值 写False值就是True 写True就是False
  • 抽象理解:爱说谎,喜欢骗人
result = not True # 输出: False
result = not False # 输出: True

2.1为什么要有这么多数据类型?

  1. 适应不同的数据需求: 每种数据类型都有其特定的用途。比如,整数和浮点数用于数值运算,字符串用于处理文本,布尔值用于控制程序流的条件判断,列表用于存储多个元素等。不同场景下,我们需要不同的数据类型来表达和处理信息。
  2. 提高效率和性能: 不同数据类型在内存和计算上有不同的存储效率。例如,整数和浮点数存储的是数字数据,而字符串和列表等则可能涉及更多的内存分配。根据数据的不同需求,使用合适的类型可以让程序在运行时更加高效。
  3. 增强代码可读性和可维护性: 使用合适的数据类型能让代码更加清晰,易于理解。例如,当看到 name = "Alice" 时,很明显我们知道 name变量 是一个字符串;而 is_active = True 显然表示一个布尔值类型。这能帮助我们和其他开发者更快速地理解代码逻辑。

小结:

  • 各种数据类型的存在是为了处理不同场景下的数据需求。
  • 通过使用合适的数据类型,我们可以让程序更加高效、简洁、可维护。
  • 数据类型的选择不仅影响程序的运行效率,还影响代码的可读性和易用性。


http://www.hkcw.cn/article/KfdsfUYwPa.shtml

相关文章

lc hot 100之:双指针题目对比

写到两个给我感觉很类似的双指针题目,但是代码不同,我想把两个题放在一起,对比着看看。 第一题: 首先,提到“重复”,比较好想到哈希表。访问过就在哈希表里记录,然后只要找哈希表中有没有这个数…

6.01打卡

浙大疏锦行 DAY 40 训练和测试的规范写法 知识点回顾: 1. 彩色和灰度图片测试和训练的规范写法:封装在函数中 2. 展平操作:除第一个维度batchsize外全部展平 3. dropout操作:训练阶段随机丢弃神经元,测试阶段eval模…

SIM——引入双阶段搜索机制在用户行为序列的同时关注动态兴趣

文章目录 1. 背景2. 方法2.1 GSU2.1.1 Hard Search2.1.2 Soft Search 2.2 ESU 这里来回顾一篇经典的文章 SIM(Search-based Interest Model),也是自己学习一下,虽然挺久了,但是业界都在使用这个,说明含金量…

LeRobot ACT——LeRobot对ALOHA ACT策略的封装:含源码解析与真机部署(效果比肩ACT原论文)

前言 本文一开始是此文的第一部分,后随着我司各大具身团队对各个动作策略的实践、深入,觉得可以挖掘且分享的细节越来越多,比如LeRobot ACT,其效果也不错 ALOHA ACT的复现与应用:双臂下的智能分拣场景 故把其中的「Le…

【Linux网络编程】网络层IP协议

目录 IP协议的协议头格式 网段划分 特殊的IP地址 IP地址的数量限制 私有IP地址和公网IP地址 路由 IP协议的协议头格式 4位版本号 :指定IP协议的版本,对于IPv4,版本号就是4。 4位首部长度:表名IP协议报头的长度,单…

微调大模型:什么时候该做,什么时候不该做?

目录 一、什么是“微调”?你真的需要它吗? 二、什么时候不该微调? 🚫 不该微调的 5 个典型场景: 1. 通用问答、闲聊、常识类内容 2. 企业内部问答 / 文档助手 3. 想要通过微调“学会格式” 4. 没有大量高质量标…

[AD] CrownJewel-1 Logon 4799+vss-ShadowCopy+NTDS.dit/SYSTEM+$MFT

QA QA攻擊者可以濫用 vssadmin 實用程式來建立卷影快照,然後提取 NTDS.dit 等敏感檔案來繞過安全機制。確定卷影複製服務進入運作狀態的時間。2024-05-14 03:42:16建立卷影快照時,磁碟區複製服務會使用機器帳戶驗證權限並列舉使用者群組。找到卷影複製過…

系统思考:整体观和心智模式

如果你是小区管委会的主委,面对住户抱怨“电梯太慢,每次都要花很久等电梯”,是不是第一反应就是——换马达、更新软件,甚至换整台电梯?这其实是典型的“线性思维”陷阱——把问题看成孤立的零件故障。 从系统思考的角…

常见相机的ISP算法

常见的ISP算法 3A算法 去雾算法 图像增强算法 图像宽动态算法 图像的电子缩放算法,无极电子缩放 图像降噪算法 相机常见问题 1.相机启动速度问题,启动速度较慢 2.相机扛不住高低温问题 3.相机散热问题问题 4.相机高低温芯片保护掉电 5.相机的成像效果或者…

黑马Java面试笔记之框架篇(Spring、SpringMvc、Springboot)

一. 单例bean Spring框架中的单例bean是线程安全的吗? Spring框架中的bean是单例的,可以在注解Scope()进行设置 singleton:bean在每一个Spring IOC容器中只有一个实例。prototype:一个bean的定义可以有多个实例 总结 二. AOP AOP称…

【Go】2、Go语言实战

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 前置知识 本篇将涉及到一些在命令行的输入输出操作,之前我们已经学习了fmt包用于输出内容,下面将介绍bufio包用于读入数据。 bufio包简介 bufio 是 Go 标准库…

基于Python与本地Ollama的智能语音唤醒助手实现

项目简介 本项目是一个基于 Python 的智能语音助手,集成了语音录制、语音识别、AI对话和语音合成功能。用户可以通过语音与本地部署的 Ollama 大模型进行自然对话。 技术架构 核心功能模块 语音录制 - 使用 sounddevice 录制用户语音语音识别 - 使用 faster-whi…

Vue框架2(vue搭建方式2:利用脚手架,ElementUI)

一.引入vue第二种搭建方式 在以前的前端项目中,一个项目需要多个html文件实现页面之前的切换,如果页面中需要依赖js或者css文件,那么我们就需要在多个html文件中都需要导入vue.js文件,太过繁琐. 现在前端开发都采用单页面结果,一个项目中只有一个html文件 其他不同的内容都写…

维斯塔潘谈和拉塞尔碰撞 意外相撞引发讨论

在F1西班牙大奖赛正赛中,维斯塔潘因与拉塞尔相撞被罚时10秒,最终排名第十。赛后采访中,记者问及那次碰撞。维斯塔潘表示两人开车时确实撞到了一起。当记者指出他本可以避免这种情况时,维斯塔潘承认了这一点。至于为什么会发生这样的情况,他表示自己也不清楚。责任编辑:zx…

乌称摧毁俄大量轰炸机 俄媒称系谣言 谎言蛛网

俄罗斯“与假新闻作战”网站发布文章称,通过分析乌克兰方面发布的视频可以确认,乌总统泽连斯基所谓“已摧毁34%俄罗斯远程机队”的说法并不属实。俄方认为,乌方的行动更像是编织了一张“谎言蛛网”。俄方分析指出,乌克兰实际上可能仅摧毁了两架图-95战略轰炸机及一架安-12运…

IntelliJ IDEA 接入 Ollama 本地模型 Qwen-coder

一:下载ollama 官网下载https://ollama.com/ 二:安装 一键自动安装,且安装的是C盘 如果C盘紧张,想装在其他盘符,在安装包目录下打开cmd命令行, 在你想安装的盘下创建一个文件夹,例如在D盘创建…

C++学习-入门到精通【12】文件处理

C学习-入门到精通【12】文件处理 目录 C学习-入门到精通【12】文件处理一、文件和流二、创建顺序文件三、从顺序文件读取数据文件定位指针对之前的程序进行修改:贷款查询程序 四、更新顺序文件五、随机存取文件1.创建随机存取文件2.修改程序:贷款处理程序…

生成式AI模型的重要评估指标——FID

1、引言 随着深度学习的发展迅速,生成式模型如生成对抗网络(GAN)、变分自编码器(VAE)等取得了显著的进展。看似逼真的图像数据,仍旧会有结构缺陷等情况发生,那么如何客观、准确的评估这些生成式…

第十:如何在Pycharm中安装AI插件(Proxy AI)

一.安装插件 1.通过官网安装:https://plugins.jetbrains.com/plugin/21056-proxy-ai2.通过设置安装:设置->插件->搜索:Proxy AI->点击安装3.安装后重启二.配置插件 1.配置路径:设置 -> 工具 -> CodeGPT或者Proxy…

在Visual Studio开发平台使用通义灵码:AI代码助手的深度实践指南

引言:当经典IDE遇见AI代码革命 Visual Studio(以下简称VS)作为微软推出的旗舰级集成开发环境,长期占据企业级开发工具的核心地位。然而,在智能化浪潮下,传统IDE的代码编写效率瓶颈日益显现。阿里云推出的通…