编程新手必看,学习python中字符串数据类型内容(8)

1、 Python3 字符串

字符串是 Python 中最常用的数据类型。我们可以使用引号( ’ 或 " )来创建字符串。
创建字符串很简单,只要为变量分配一个值即可。例如:

var1 = 'Hello World!'
var2 = "Runoob"

Python 访问字符串中的值
Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。
Python 访问子字符串,可以使用方括号 [] 来截取字符串,字符串的截取的语法格式如下:

变量[头下标:尾下标]

索引值以 0 为开始值,-1 为从末尾的开始位置。
在这里插入图片描述
在这里插入图片描述
如下实例:
实例(Python 3.0+)


a = 'Hello World!'
b = "Runoob"
print("a[0]: ", a[0])
print("b[1:5]: ", b[1:5])

运行结果

a[0]:  H
b[1:5]:  unoo

在这里插入图片描述

2、Python 字符串更新

你可以截取字符串的一部分并与其他字段拼接,如下实例:
实例(Python 3.0+)

c = 'Hello World!'
print("已更新字符串 : ", c[:6] + 'python!')

运行结果

已更新字符串 :  Hello Runoob!

在这里插入图片描述

3、Python 转义字符

在需要在字符中使用特殊字符时,python 用反斜杠 \ 转义字符。如下表:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
使用 \r 实现百分比进度:
实例

import time
for i in range(100):print("\r{:3}%".format(i),end=' ')time.sleep(0.05)

运行结果

 99% 

在这里插入图片描述
以下实例,我们使用了不同的转义字符来演示单引号、换行符、制表符、退格符、换页符、ASCII、二进制、八进制数和十六进制数的效果:
实例

print('\'Hello, world!\'')  # 输出:'Hello, world!'
print("Hello, world!\nHow are you?")  # 输出:Hello, world!#       How are you?
print("-------------------------------------------------")
print("Hello, world!\tHow are you?")  # 输出:Hello, world!    How are you?
print("Hello,\b world!")  # 输出:Hello world!
print("Hello,\f world!")  # 输出: # Hello, #  world!
print("A 对应的 ASCII 值为:", ord('A'))  # 输出:A 对应的 ASCII 值为: 65
print("\x41 为 A 的 ASCII 代码")  # 输出:A 为 A 的 ASCII 代码
decimal_number = 42
binary_number = bin(decimal_number)  # 十进制转换为二进制
print('转换为二进制:', binary_number)  # 转换为二进制: 0b101010
octal_number = oct(decimal_number)  # 十进制转换为八进制
print('转换为八进制:', octal_number)  # 转换为八进制: 0o52
hexadecimal_number = hex(decimal_number)  # 十进制转换为十六进制
print('转换为十六进制:', hexadecimal_number) # 转换为十六进制: 0x2a

运行结果

'Hello, world!'
Hello, world!
How are you?
-------------------------------------------------
Hello, world!	How are you?
Hello world!
Hello, world!
A 对应的 ASCII 值为: 65
A 为 A 的 ASCII 代码
转换为二进制: 0b101010
转换为八进制: 0o52
转换为十六进制: 0x2a

在这里插入图片描述

4、Python 字符串运算符

下表实例变量 a 值为字符串 “Hello”,b 变量值为 “Python”:
在这里插入图片描述
实例(Python 3.0+)

a = "Hello"
b = "Python"
print("a + b 输出结果:", a + b)
print("a * 2 输出结果:", a * 2)
print("a[1] 输出结果:", a[1])
print("a[1:4] 输出结果:", a[1:4])
if ("H" in a):print("H 在变量 a 中")
else:print("H 不在变量 a 中")
if ("M" not in a):print("M 不在变量 a 中")
else:print("M 在变量 a 中")
print(r'\n')
print(R'\n')

以上实例输出结果为:

a + b 输出结果: HelloPython
a * 2 输出结果: HelloHello
a[1] 输出结果: e
a[1:4] 输出结果: ell
H 在变量 a 中
M 不在变量 a 中
\n
\n

5、Python 字符串格式化

Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。
在 Python 中,字符串格式化使用与 C 中 sprintf 函数一样的语法。
实例(Python 3.0+)

print("我叫 %s 今年 %d 岁!" % ('小红', 18))

运行结果

我叫 小红 今年 18 岁!

python字符串格式化符号:
在这里插入图片描述
格式化操作符辅助指令:
在这里插入图片描述

6、Python三引号

python三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。实例如下
实例(Python 3.0+)

d = """这是一个多行字符串的实例
多行字符串可以使用制表符
TAB ( \t )。
也可以使用换行符 [ \n ]。
"""
print (d)

运行行结果为:

这是一个多行字符串的实例
多行字符串可以使用制表符
TAB ( 	 )。
也可以使用换行符 [ ]

三引号让程序员从引号和特殊字符串的泥潭里面解脱出来,自始至终保持一小块字符串的格式是所谓的WYSIWYG(所见即所得)格式的。
f-string
f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串,是新的格式化字符串的语法。
之前我们习惯用百分号 (%):
实例

>>> name = 'Runoob'
>>> 'Hello %s' % name
'Hello Runoob'

f-string 格式化字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去,实例如下:
实例

>>> name = 'Runoob'
>>> f'Hello {name}'  # 替换变量
'Hello Runoob'
>>> f'{1+2}'         # 使用表达式
'3'
>>> w = {'name': 'Runoob', 'url': 'www.runoob.com'}
>>> f'{w["name"]}: {w["url"]}'
'Runoob: www.runoob.com'

用了这种方式明显更简单了,不用再去判断使用 %s,还是 %d。
在 Python 3.8 的版本中可以使用 = 符号来拼接运算表达式与结果:
实例

>>> x = 1
>>> print(f'{x+1}')   # Python 3.6
2
>>> x = 1
>>> print(f'{x+1=}')   # Python 3.8
x+1=2

7、Unicode 字符串

在Python2中,普通字符串是以8位ASCII码进行存储的,而Unicode字符串则存储为16位unicode字符串,这样能够表示更多的字符集。使用的语法是在字符串前面加上前缀 u。
在Python3中,所有的字符串都是Unicode字符串。
Python 的字符串内建函数
Python 的字符串常用内建函数如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

Linux(centos7)部署spark

Spark部署模式主要有4种:Local模式(单机模式)、Standalone模式(使用Spark自带的简单集群管理器)、Spark On Yarn模式(使用YARN作为集群管理器)和Spark On Mesos模式(使用Mesos作为集…

机器学习模型——关联规则

目录 关联规则 - 基本概念 关联规则的挖掘步骤: Apriori算法 Apriori算法简介: Apriori算法举例: Apriori算法优缺点: Apriori算法应用 FP-growth算法: FP-growth算法简介: FP-growth的数据结构: …

AI帮助写代码:在python中,如何替换字符串中指定位置的字符

用python编写一段代码,在下面的字符串中:#1#2#3#4#5#6#7#8#9#10#11#12#13#14#15#16#17#18#19#20#21#22#23#24#25#26#27#28#29,从第2个‘#开始,每个#前面加一个字符串 or ‘。 # 原始字符串 s "#1#2#3#4#5#6#7#8#9#10#11#12#13#14#15#…

多线程学习-线程池

目录 1.线程池的作用 2.线程池的实现 3.自定义创建线程池 1.线程池的作用 当我们使用Thread的实现类来创建线程并调用start运行线程时,这个线程只会使用一次并且执行的任务是固定的,等run方法中的代码执行完之后这个线程就会变成垃圾等待被回收掉。如…

2024最新GPT4.0使用教程:GPTs,AI绘画,AI换脸,AI绘画,文档分析一站式解决

一、前言 ChatGPT3.5、GPT4.0、相信对大家应该不感到陌生吧?简单来说,GPT-4技术比之前的GPT-3.5相对来说更加智能,会根据用户的要求生成多种内容甚至也可以和用户进行创作交流。 然而,GPT-4对普通用户来说都是需要额外付费才可以…

超强AI辅助工具:BitoCLI的简单使用

今天要推荐一个爱不释手的好东西–Bito; 从事相关工作的人大概率在自己的代码编辑器中已经用上了Bito的插件版本,所以这里主要介绍的是一个适合与所有人且方便快捷的Bito CLI,也就是Bito的命令行版本。 BitoCLI 从官方介绍来看,这是一款为 …

卸载不留痕,App Cleaner Uninstaller助你打造清爽Mac

在数字时代,我们的Mac设备上积累了大量的应用程序,其中一些可能不再需要或不再使用。随着时间的推移,这些不再使用的应用程序可能会占用宝贵的存储空间,影响设备的性能。为了解决这个问题,App Cleaner & Uninstall…

【C+ +初阶】前言篇章---C+ +的广袤

目录 1.C语言到C的过渡 2.C的发展历程 2.1C语言的诞生 2.2 c的历史版本 3.c 的地位 4. c的应用场景 4.1. 操作系统以及大型系统软件开发 所有操作系统几乎都是C/C写的 4.2. 服务器端开发 后台开发: 4.3. 游戏开发 4.4. 嵌入式 4.5. 数字图像处理 4.6. 人工智能 4.7.…

初始Java篇(JavaSE基础语法)(6)(继承和多态)(上)

Java学习篇 个人主页(找往期文章包括但不限于本期文章中不懂的知识点):我要学编程(ಥ_ಥ)-CSDN博客 目录 继承篇 为什么需要继承? 继承概念 继承的语法 父类成员访问 super关键字 子类构造方法 super和this的比较 再谈…

深度学习十大算法之深度Q网络(DQN)

一、简介 深度Q网络(DQN)是一种结合了深度学习和强化学习的算法,它在近年来成为了人工智能领域的一个热点。DQN首次被引入是在2013年,由DeepMind的研究人员开发。它标志着深度学习技术在解决高维度决策问题上的一大突破。 DQN的…

Python可视化之pandas

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.解决坐标轴刻度负号乱码2.解决中文乱码问题3.折线图Series.plot()&DataFrame.plot()4.条形图5.箱线图6.区域面积图(堆积折线图)7.散点…

Ideal的使用技巧

一、springcloud项目如何将多个服务放到services中一起启动 1、打开ideal,再view -> Tool Windows -> services 2、在services界面 找到 run configuration type -> springboot即可 二、配置临时的启动参数 1、在edit configurations中 2、选择相应的服务…

关于Linux下的进程状态(进程篇)

目录 Linux操作系统的一般进程状态 关于阻塞 关于挂起 Linux内核状态源代码: 关于僵尸进程 关于孤儿进程 Linux操作系统的一般进程状态 新建:字面意思运行:task_struct结构体在运行队列中排队,就叫做运行态阻塞:等待非…

基于springboot实现学科竞赛管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现学科竞赛管理系统演示 摘要 随着国家教育体制的改革,全国各地举办的竞赛活动数目也是逐年增加,面对如此大的数目的竞赛信息,传统竞赛管理方式已经无法满足需求,为了提高效率,竞赛管理系统应运而生。…

计算机语言 之【C++】入门级知识讲解(命名空间,C++输入输出,缺省参数,函数重载,引用,内敛函数,auto关键字,for循环,指针空值nullptr)

三点睡六点起,阎王夸我好身体 不到三点我不睡,太平间里抢C位 一、命名空间 1.命名空间的作用 2.命名空间定义 3.命名空间使用 二、C的输入输出 1.输入输出说明介绍 2.std命名空间的使用惯例 三、缺省参数 1.缺省参数概念 2.缺省参数分类 四、…

“Linux 三剑客”,通常指的是三个经典的命令行工具:grep、sed 和 awk

1、grep: 简介:grep 是一个强大的文本搜索工具,可以用于在文件中查找匹配特定模式的行。示例: 搜索包含特定关键词的行: grep "keyword" filename 递归搜索目录下所有文件: grep -r define zj…

C++要点细细梳理(下)(内存分配、异常处理、template和文件读写)

4. 类动态内存分配 4.1 C语言动态内存分配:malloc和free 4.2 C动态内存分配:new和delete 思考:定义一个对象和定义一个普通变量有何区别? 普通变量:分配足够空间即可存放数据对象:除了需要空间,还要构造/析构 类比:…

路由策略与路由控制之双点双向重发布(OSPF-ISIS)实验

双点双向重发布在路由协议中,特别是在OSPF(开放式最短路径优先)与IS-IS(中间系统到中间系统)等协议之间,指的是在两个协议间或者两个进程间进行路由信息共享的机制。这种机制涉及到在两个不同的协议区域使用…

isc-dhcp-server DNS配置

我遇到一个有趣的问题,我先在一台Ubuntu服务器上使用isc-dhcp-server在其其中一个网口运行DHCP服务,然后我自己的笔记本电脑直连到这个网口,来上网。 本来直接就应该能上网,但是我的电脑只有在打开Clash时才能访问互联网&#xf…

【STL】栈

笔者在做下面这道题的时候想到用栈&#xff0c;但写的很麻烦 代码&#xff1a; #include<bits/stdc.h> using namespace std; #define MAXC 255 typedef int SElemType; typedef struct StackNode {SElemType data;struct StackNode *next; }StackNode,*LinkStack; bool…