生命在于学习——Python人工智能原理(4.3)

在这里插入图片描述

三、Python的数据类型

3.1 python的基本数据类型

3.1.4 布尔值(bool)

在Python中,布尔值是表示真或假的数据类型,有两个取值,True和False,布尔值常用于控制流程、条件判断和逻辑运算,本质上来说,布尔型其实是一种特殊的整数,True对应1,False对应0。
任何对象都具有布尔属性。

3.1.5 字符串(str)

(1)字符串定义

Python中的字符串是由一对单引号、一对双引号或者一对三引号括起来的字符序列。
单引号括起来的单行,可以使用双引作为字符串的一部。
双引号括起来的单行,可以使用单引号作为字符串的一部分。
三引号括起来的多行,可以使用单引号、双引号作为字符串的一部分,也可以换行。
如果非要在单引号(或双引号)括起来的字符串中包括单引号或者双引号,可以使用转义字符反斜杠对字符串中的单引号或者双引号进行转义处理。
注意:
字符串可以使用单引号或双引号来定义,但最好在一个文件中统一使用同一种,避免混合使用。
如果字符串中可能包含某种引号时,那么优先使用另一种形式的引号来定义字符串,尽量不使用转义字符。
在这里插入图片描述

(2)字符串的类型

使用type()函数可以确定一个对象的类型。

(3)字符串的索引和切片

字符串中的多个字符都会按顺序给出一个编号,这个编号就是索引。
如s=‘python’,其中字母p的编号为0,可以通过索引获取单个字符。
python中的字符串,我们可以通过索引取出其中的一个字符或一段字符子串,但不支持动态修改。
字符串是不可变的序列,意味着一旦创建,就不能被修改。
在字符串中通过索引取出一个活一段字符子串的操作系统非常灵活,我们把取其中一段的操作称为切片。切片是通过指定初试索引和结束索引来获取字符串的一部分。
切片的语法是start:stop:step,其中,start表示起始索引,stop表示结束索引(不包含在切片中),step表示步长。
Str[start:stop:step]
Str[start:stop]:表示从字符串s中取索引号从n到m-1的字符子串,其中不包含索引号m的字符。
Str[start]:省略结束索引号,表示切取索引号从n到最后一个字符的子串。
Str[:stop]:省略开始索引号,表示切取索引号从0到索引号为m-1的子串。
Str[-start:-stop]:表示从字符串s中切取索引号从倒数n到倒数m-1的字符子串。
Str[::]:省略开始和结束索引号,表示切取整个字符串。
Str[::-step]:获得整个字符串的逆序。

(4)字符串的运算

字符串支持基本的运算,如拼接和重复。

(5)字符串的方法

在Python的解释器内部,所有数据类型都采用面向对象的方式实现,封装丞一个类。
字符串就是其中的一个类,每一个类里面都有许多自己的方法和属性,想要使用类的方法和属性,需要用a.b()的方式进行调用,其中a指明相应类创建的对象。
字符串常见的处理方法如下:
在这里插入图片描述

(6)字符串的处理函数

Python提供了许多内置函数,其中有6个与字符串处理相关的函数:

在这里插入图片描述

(7)字符串的格式化方法

Python提供了两种字符串格式化方法,一种是类C语言Printf()函数的格式化方法,另一种采用专门的format()格式化方法。

Python提供了多种字符串格式化方法,下面将分别介绍这些方法的使用方法并给出示例。

a、使用%进行格式化

使用%对字符串格式化的基本形式为:%[key][flags][width][.precision][length]type%var

%:格式化开始标志
[key]:可选,用于指定字典中的键
[flags]:可选,用于控制输出的格式(如左对齐、右对齐、正负号等)
[width]:可选,指定输出字段的最小宽度
[.precision]:可选,对于浮点数,它指定小数点后的位数;对于字符串,它指定最大字段宽度
[length]:可选,通常与h、l、L一起使用,指定整数的大小
type:必须,指定格式化类型(如d、f、s等)
var:要格式化的变量

示例:

python
# 整数格式化  
num = 1234  
formatted_num = '%06d' % num  # 输出宽度为6的整数,不足部分用0填充  
print(formatted_num)  # 输出: 001234  
  
# 浮点数格式化  
pi = 3.14159  
formatted_pi = '%.2f' % pi  # 保留两位小数  
print(formatted_pi)  # 输出: 3.14  
  
# 字符串格式化  
name = 'Alice'  
formatted_name = '%s is great!' % name  
print(formatted_name)  # 输出: Alice is great!
b、format方法

format()方法的基本使用形式为:<模板字符串>.format(参数1, 参数2, …)

在模板字符串中,可以使用{}作为占位符,并通过位置或关键字参数来指定值。

示例:

python
# 位置参数  
template = 'I am {} and I am {} years old.'  
formatted_str = template.format('Bob', 25)  
print(formatted_str)  # 输出: I am Bob and I am 25 years old.  
  
# 关键字参数  
template = 'Hello, {name}! You are {age} years old.'  
formatted_str = template.format(name='Alice', age=30)  
print(formatted_str)  # 输出: Hello, Alice! You are 30 years old.  
  
# 格式化数字  
num = 3.14159  
formatted_num = '{:.2f}'.format(num)  # 保留两位小数  
print(formatted_num)  # 输出: 3.14
c、使用f字符串(Python 3.6及以上版本)
f-strings在字符串前加上f或F,并在字符串内部使用{}来包含变量或表达式。

示例:

python
name = 'Bob'  
age = 25  
# f-string  
formatted_str = f'Hello, {name}! You are {age} years old.'  
print(formatted_str)  # 输出: Hello, Bob! You are 25 years old.  
  
# 在f-string中计算  
num1 = 10  
num2 = 20  
result = f'{num1} + {num2} = {num1 + num2}'  
print(result)  # 输出: 10 + 20 = 30
f-strings提供了一种简洁且直观的方式来嵌入变量和表达式,使得字符串格式化变得更加方便。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ONLYOFFICE 桌面编辑器 8.1全新发布,更强大的编辑工具

ONLYOFFICE 8.1 一、什么是ONLYOFFICE&#xff1f;二、怎么安装 ONLYOFFICE 8.1三、主要功能介绍四、总结 一、什么是ONLYOFFICE&#xff1f; ONLYOFFICE 是一款功能强大的办公套件&#xff0c;旨在提供全面的文档、表格和演示文稿编辑解决方案。它集成了文字处理、电子表格和演…

基于 Native 技术加速 Spark 计算引擎

本文整理自 2024 年 6 月 DataFunSummit 2024 OLAP 架构峰会 Lakehouse 湖仓一体化架构论坛的同名主题分享。 今天分享的主题是基于 Native 技术加速 Spark 计算引擎&#xff0c;大家将会了解到如何基于 ClickHouse 来改造 Spark 引擎&#xff0c;最终获得较为可观的性能提升。…

正则表达式以及文本三剑客grep、sed、awk

正则表达式匹配的是文本内容&#xff0c;文本三剑客都是针对文本内容。 grep&#xff1a;过滤文本内容 sed&#xff1a;针对文本内容进行增删改查 awk&#xff1a;按行取列 一、grep grep的作用使用正则表达式来匹配文本内容 1、grep选项 -m&#xff1a;匹配几次之后停止…

第10章 启动过程组 (启动过程组的重点工作)

第10章 启动过程组 10.3启动过程组的重点工作&#xff0c;在第三版教材第362~364页&#xff1b; 文字图片音频方式 第一个知识点&#xff1a;项目启动会议 1、作用 标志着对项目经理责权的定义结果的正式公布&#xff0c;通常由项目经理负责组织和召开。2、目的 使项目各…

2024 cicsn 西南赛区 半决赛

文章目录 前言mcmf结构定义添加边遍历邻接点示例场景解决步骤1. 初始化2. 应用SPFA找最小费用增广路径 3. 增广操作4. 终止条件 结果分析 逆向maincaldeladdedit 思路expvlunexp qeme启动不行保护逆向 题目给的脚本模版 前言 不能联网搜是真坐牢 本来想等着全写了再发的&#…

我终于毕业啦!

2024-6-24&#xff0c;星期一&#xff0c;19:21&#xff0c;天气&#xff1a;阴转小雨&#xff0c;心情&#xff1a;晴。大家好啊&#xff0c;“失踪人员”回归啦&#xff0c;整整断更了两周&#xff0c;这两周发生了很多事&#xff0c;第一件就是我的毕业答辩通过啦&#xff0…

python-题库篇-Python语言特性

文章目录 Python语言特性1 Python的函数参数传递2 Python中的元类(metaclass)3 staticmethod和classmethod4 类变量和实例变量5 Python自省6 字典推导式7 Python中单下划线和双下划线8 字符串格式化:%和.format9 迭代器和生成器10 *args and **kwargs11 面向切面编程AOP和装饰器…

Element 进度条样式优化

在开发后台管理系统时&#xff0c;经常会用到进度条这样一个控件&#xff0c;Element UI中提供了progress这样一个组件&#xff0c;如下图所示&#xff1a; 该组件默认的颜色会比较单一&#xff0c;为此时常需要对该组件的样式进行一些优化&#xff0c;以满足实际项目的需求。 …

【华为HCIA数通网络工程师真题-构建以太网交换网络】

华为HCIA数通网络工程师真题-构建以太网交换网络 一、1-10题 一、1-10题 1、如图所示&#xff0c;四台交换机都运行 STP&#xff0c;各种参数都采用默认值如果交换机C的G0/0/2端口发生阻塞并无法通过该端口发送配置 BPDU&#xff0c;则网络中 blocked 端口多久之后会进入到转发…

【Linux】动/静态库的创建和使用

目录 一、动/静态库的概念回顾&#xff1a; 二、动态库与静态库的区别&#xff1a; 三、静态库的创建与使用&#xff1a; 1、Linux静态库命名规则&#xff1a; 2、静态库的创建和使用&#xff1a; 四、动态库的创建与使用&#xff1a; 1、Linux动态库命名规则&#xff1…

Mac环境 aab包转apks,并安装apks

一、下载下载bundletool工具 Releases google/bundletool GitHub 二、将下载bundletool.jar包、aab、keystore文件全部放到同一个目录下 例如我全部放到download目录下 转换命令行&#xff1a; java -jar bundletool-all-1.16.0.jar build-apks --modeuniversal --bundle…

「全新升级,性能更强大——ONLYOFFICE 桌面编辑器 8.1 深度评测」

文章目录 一、背景二、界面设计与用户体验三、主要新功能亮点3.1 高效协作处理3.2 共同编辑&#xff0c;毫无压力3.3 批注与提及3.4 追踪更改3.5 比较与合并3.6 管理版本历史 四、性能表现4.1 集成 AI 工具4.2 插件强化 五、用户反馈与使用案例 一、背景 Ascensio System SIA -…

finalize——释放内存

重写 没写的话就按照定义的方法&#xff0c;object的默认方法 system.gc会主动调用垃圾回收器&#xff0c;不会使用finalize方法。需求不大 对于用debug怎么进入jdk源码&#xff0c;ararry.sort的源码进入

OpenAI: 禁止在不支持的地区使用其 API

OpenAI 给开发者发邮件表示&#xff0c;禁止其 API 用于不被允许的地区&#xff0c;否则 7 月 9 日将面临封杀。 本次封杀似乎不区分 IP &#xff0c;而是直接按照地理位置。

Centos+Jenkins+Maven+Git 将生成的JAR部署到远程服务器上

1、登录 没有安装的参考下面的安装步骤先安装: Jenkins安装手册 输入账号、密码登录系统。 2、新建任务 2.1 创建页面 1,“输入一个任务名称”; 2,任务类型点击“构建一个maven项目”; 3,点击“确定”,此时,构建任务创建完成。 2.2 General 1、描述:输入要部署…

Kotlin设计模式:代理模式详解

Kotlin设计模式&#xff1a;代理模式详解 在软件开发中&#xff0c;设计模式是解决常见问题的一种优雅方法。本文将介绍Kotlin中的代理模式&#xff08;Proxy Pattern&#xff09;&#xff0c;其应用场景&#xff0c;以及如何通过实例代码实现这一模式。 代理模式的目的 代理…

【软考高项】- 2024.05月成绩查询

查询地址&#xff1a;全国计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试 考试批次&#xff1a;2024.05.26 第二批&#xff08;论文&#xff1a;成本管理&#xff09; 我的分数&#xff1a; 结论&#xff1a;未通过本次考试&#xff0c;2025.05 继续努力&…

判断对象是否为空的多种方式

判断对象是否为空 网上也有许多方法&#xff0c;这里来整理一下 一、Object.keys(obj) ES6 写法&#xff1a; const data {}; const arr Object.keys(data); console.log(arr.length); // 0二、JSON.stringify() const obj {}; const arr JSON.stringify(obj); console.…

基本工资8000,三班倒轮班,有点辛苦,技术含量高,但越老越吃香的工作工资待遇分享...

技术员的逆袭&#xff1a;数控技术员的职场升级攻略 引言 在职场这片星辰大海中&#xff0c;有一群默默耕耘的技术员&#xff0c;他们用双手和智慧&#xff0c;雕刻着工业的明天。数控技术员&#xff0c;一个听起来就充满机械感和科技感的职业&#xff0c;他们的故事&#xff0…

05-java基础——循环习题

循环的选择&#xff1a;知道循环的次数或者知道循环的范围就使用for循环&#xff0c;其次再使用while循环 猜数字 程序自动生成一个1-100之间的随机数&#xff0c;在代码中使用键盘录入去猜出这个数字是多少&#xff1f; 要求&#xff1a;使用循环猜&#xff0c;一直猜中为止…