Python语法必备篇——Python字符串 学习【文末送书】

简介: 目录📢 前言👑Python语法必备篇——字符串 学习🏳️‍🌈访问字符串🏳️‍🌈字符串拼接🏳️‍🌈Python转义字符🏳️‍🌈Python字符串运算符🏳️‍🌈Python 字符串格式化🏳️‍🌈Python三引号🏳️‍🌈可变字符串🏳️‍🌈使用 input 获取用户输入🏳️‍🌈Python 的字符串内建函数👥总结👑评论区抽奖送书🚀往期优质文章分享

📢 前言

本文章是【Python零基础到入门专栏】学习的系列文章


Python学习专栏 传送门 在此:https://blog.csdn.net/zhangay1998/category_11086734.html


本篇文章来说一下Python 的字符串,也是Python之路上一个必备的操作~


提示:本文的环境配置是Python3的开发环境,后续教程也都是Python3


👑Python语法必备篇——字符串 学习

本篇文章来讲一下Python中的字符串,方便我们学习


字符串的意思跟字面意思很像,就是“一串字符”,字符串是 Python 中最常用的数据类型。


Python 要求字符串必须使用引号括起来,使用单引号也行,使用双引号也行,只要两边的引号能配对即可。


Python3 直接支持 Unicode,可以表示世界上任何书面语言的字符。


Python3 的字符默认就是 16 位 Unicode 编码,ASCII 码是 Unicode 编码的子集。


创建字符串很简单,只要为变量分配一个值即可,例如以下代码:

str1 = 'Hello,World”'
str2 = "呆呆敲代码的小Y"
print(str1)
print(str2)

输出结果:

Hello,World

呆呆敲代码的小Y


🏳️‍🌈访问字符串

Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。

Python 访问子字符串,可以使用方括号 [] 来截取字符串,字符串的截取的语法格式如下:

变量[头下标:尾下标]

索引值以 0 为开始值,-1 为从末尾的开始位置。


image.png


🏳️‍🌈字符串拼接

Python 使用加号(+)作为字符串的拼接运算符,例如如下代码:

s1 = "Python "
s2 = "小Y"
#使用+拼接字符串
s3 = s1 + s2
print(s4)

输出结果:

Python 小Y

还可以截取字符串的一部分并与其他字段拼接,如下实例:

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

输出结果

已更新字符串 : Hello 小Y!

但是有时候会遇到字符串拼接数值的情况,这个时候并不能直接将他们添加到一起

可以使用str() 或 repr() 函数来解决问题

s = "数字: "
p = 66.6
#字符串直接拼接数值,程序报错
print(s + p)
#使用str()将数值转换成字符串
print(s + str(p))
#使用repr()将数值转换成字符串
print(s + repr(p))

str() 和 repr() 函数都可以将数值转换成字符串,其中 str 本身是 Python 内置的类型(和 int、float 一样),而 repr() 则只是一个函数。


🏳️‍🌈Python转义字符

Python中有很多转义字符,我们一起来看一下一些常用的转义字符image.png为什么要用这些转义符呢,因为某些难以用字符表示的效果 需要使用“+特殊字符”来实现


🏳️‍🌈Python字符串运算符

有时候我们需要对一些字符串进行一些个简单的拼接等运算

所以python中也有一些专门的运算符给我们做此使用image.png下面来结合实例看一下具体的字符串运算符用法!

a = "Hello"
b = "小Y"
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 输出结果: Hello小Y

a * 2 输出结果: HelloHello

a[1] 输出结果: e

a[1:4] 输出结果: ell

H 在变量 a 中

M 不在变量 a 中

\n

\n


🏳️‍🌈Python 字符串格式化

Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。


在 Python 中,字符串格式化使用与 C 中 sprintf 函数一样的语法。例如:

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

输出结果:

我叫 小Y 今年 25 岁!

还可以使用 str.format() 来实现,可以通过 {} 和 : 来代替以前的 % 。例如:

>>> a = "名字是:{0},年龄是:{1}"
>>> a.format("高淇",18)
'名字是:高淇,年龄是:18'
>>> a.format("高希希",6)
'名字是:高希希,年龄是:6'

python字符串格式化符号:image.png格式化操作符辅助指令:

image.png

🏳️‍🌈Python三引号

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

简单实例如下:

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

输出结果:


这是一个多行字符串的实例

多行字符串可以使用制表符

TAB ( )。

也可以使用换行符 [

]。


使用这个三引号有一个很方便的点,就是当我们需要表示一个很复杂的字符串代码段时

比如HTML或者SQL语句,这个时候使用转义字符就会非常麻烦,而使用三引号就非常方便。例如:

errHTML = '''
<HTML><HEAD><TITLE>
Friends CGI Demo</TITLE></HEAD>
<BODY><H3>ERROR</H3>
<B>%s</B><P>
<FORM><INPUT TYPE=button VALUE=Back
ONCLICK="window.history.back()"></FORM>
</BODY></HTML>
'''
cursor.execute('''
CREATE TABLE users (  
login VARCHAR(8), 
uid INTEGER,
prid INTEGER)
''')

🏳️‍🌈可变字符串

由于Python中的字符串是属于不可变对象,不支持原地修改

但是我们有时候确实需要进行原地修改的时候也可以使用 io.StringIO对象array 模块进行修改

例如:

>>> import io
>>> s = "hello, xiaoY"
>>> sio = io.StringIO(s)
>>> sio
<_io.StringIO object at 0x02F462B0>
>>> sio.getvalue()
'hello, xiaoY'
>>> sio.seek(11)
11
>>> sio.write("Z")
1
>>> sio.getvalue()
'hello, xiaoZ'

🏳️‍🌈使用 input 获取用户输入

input() 函数用于向用户生成一条提示,然后获取用户输入的内容。

由于 input() 函数总会将用户输入的内容放入字符串中,因此用户可以输入任何内容,input() 函数总是返回一个字符串。

msg = input("请输入你的值:")
print (type(msg))
print(msg)

第一次运行该程序,我们输入一个整数,运行过程如下:


请输入你的值:6

<class ‘str’>

6


第二次运行该程序,我们输入一个浮点数,运行过程如下:


请输入你的值: 1.2

<class ‘str’>

1.2


第三次运行该程序,我们输入一个字符串,运行过程如下:


请输入你的值:xiaoY

<class ‘str’>

xiaoY


从上面的几个实例可以看出,无论输入哪种内容,始终可以看到 input() 函数返回字符串,程序总会将用户输入的内容转换成字符串。


🏳️‍🌈Python 的字符串内建函数

最后再来说一下Python 的字符串内建函数


什么是内建函数呢,简单来说就是Python为我们封装好的一些方法,可以拿来直接使用


下面来看一下表格,简单讲常用的 字符串内建函数 ,方便我们在写代码的时候快捷使用

image.png

👥总结

本文介绍了Python中的字符串部分

字符串是我们在写代码的时候最常用的一部分了

这里介绍了包括访问字符串、字符串拼接、Python转义字符、Python字符串运算符、Python 字符串格式化、Python三引号、可变字符串、使用 input 获取用户输入、Python 的字符串内建函数等方法

都是Python中比较常用的部分,可能也有没讲到的地方,大家可以自行查阅资料再进行学习

其中部分表格也是参考了一些其他文章中的内容,在这里致谢了~

如有哪个地方写的不对也希望大家可以在评论区指正修改哦

觉得博主写的还不错记得三连支持一波哦~ 咱们下次再见啦!


相关文章
|
3天前
|
机器学习/深度学习 分布式计算 物联网
【Python机器学习专栏】联邦学习:保护隐私的机器学习新趋势
【4月更文挑战第30天】联邦学习是保障数据隐私的分布式机器学习方法,允许设备在本地训练数据并仅共享模型,保护用户隐私。其优势包括数据隐私、分布式计算和模型泛化。应用于医疗、金融和物联网等领域,未来将发展更高效的数据隐私保护、提升可解释性和可靠性的,并与其他技术融合,为机器学习带来新机遇。
|
3天前
|
机器学习/深度学习 自然语言处理 搜索推荐
【Python机器学习专栏】迁移学习在机器学习中的应用
【4月更文挑战第30天】迁移学习是利用已有知识解决新问题的机器学习方法,尤其在数据稀缺或资源有限时展现优势。本文介绍了迁移学习的基本概念,包括源域和目标域,并探讨了其在图像识别、自然语言处理和推荐系统的应用。在Python中,可使用Keras或TensorFlow实现迁移学习,如示例所示,通过预训练的VGG16模型进行图像识别。迁移学习提高了学习效率和性能,随着技术发展,其应用前景广阔。
|
3天前
|
机器学习/深度学习 算法 前端开发
【Python机器学习专栏】集成学习中的Bagging与Boosting
【4月更文挑战第30天】本文介绍了集成学习中的两种主要策略:Bagging和Boosting。Bagging通过自助采样构建多个基学习器并以投票或平均法集成,降低模型方差,增强稳定性。在Python中可使用`BaggingClassifier`实现。而Boosting是串行学习,不断调整基学习器权重以优化拟合,适合弱学习器。Python中可利用`AdaBoostClassifier`等实现。示例代码展示了如何在实践中运用这两种方法。
|
3天前
|
机器学习/深度学习 算法 数据挖掘
【Python机器学习专栏】关联规则学习:Apriori算法详解
【4月更文挑战第30天】Apriori算法是一种用于关联规则学习的经典算法,尤其适用于购物篮分析,以发现商品间的购买关联。该算法基于支持度和置信度指标,通过迭代生成频繁项集并提取满足阈值的规则。Python中可借助mlxtend库实现Apriori,例如处理购物篮数据,设置支持度和置信度阈值,找出相关规则。
|
3天前
|
机器学习/深度学习 算法 前端开发
【Python机器学习专栏】集成学习算法的原理与应用
【4月更文挑战第30天】集成学习通过组合多个基学习器提升预测准确性,广泛应用于分类、回归等问题。主要步骤包括生成基学习器、训练和结合预测结果。算法类型有Bagging(如随机森林)、Boosting(如AdaBoost)和Stacking。Python中可使用scikit-learn实现,如示例代码展示的随机森林分类。集成学习能降低模型方差,缓解过拟合,提高预测性能。
|
4天前
|
Python
python中的语法错误
【4月更文挑战第23天】
11 3
|
5天前
|
Go 索引 Python
非常全面的python字符串相关处理方法(二)
非常全面的python字符串相关处理方法(二)
|
5天前
|
存储 索引 Python
非常全面的python字符串相关处理方法(一)
非常全面的python字符串相关处理方法(一)
|
5天前
|
Python
【Python21天学习挑战赛】- 错误和异常
【Python21天学习挑战赛】- 错误和异常
|
5天前
|
容器
【Python21天学习挑战赛】-迭代器 & f-格式化 & 模块
【Python21天学习挑战赛】-迭代器 & f-格式化 & 模块