查看原文
其他

Python基本数据类型之「字符串」

小帅b 学习python的正确姿势 2019-04-06

字符串(String)在 Python 中用途很多的,你可以把它理解为文本,比如你说:“哇靠!小帅b真他妈的帅啊!”,这就是字符串。说句好听点的,字符串就是字符的「序列」,至于什么是序列,就牵扯到数据结构了,这个不在今天的内容范围之内。咱们今天的主角是 Python 中的基本数据类型:字符串


 请习惯小帅b的不要脸。



1. 单引号(')字符串


把一段文本用单引号「'」包围起来,它就变成了字符串,和数一样是一个值。比如:


text = '世界上最帅的人是小帅b'


这里的变量名就是text,而对应的值就是字符串「世界上最帅的人是小帅b」。


2. 双引号(")字符串


把一段文本用双引号「"」包围起来,它就变成了字符串,和数一样是一个值。比如:


text = "世界上最帅的人是小帅b"


这里的变量名就是text,而对应的值就是字符串「世界上最帅的人是小帅b」。


 挖槽,这不是和单引号一样么?别特么逗我啊!



哈哈,是的,其实单引号的字符串和双引号的字符串是一样的,不过为什么Python要支持单引号又支持双引号呢?


那是因为,有时候我们的文本里面,不一定就只用双引号或者单引号啊,比如说:


"包钟480,包夜1200",她说。


这句话对于 Python 解释器来说,他只认识引号里面的内容,也就是说 python 只知道字符串「包钟480,包夜1200」,而后面的「,她说。」对于 Python 来说不认识。


那么如果是这样的话:


'"包钟480,包夜1200",她说。'


Python 就能懂!



所以你应该理解为什么 Python 同时支持双引号和单引号了吧。



 包夜太贵了,能不能便宜点啊?



3. 三引号字符串('''或者""")


这三引号是来干嘛的呢?如果你要表示一个很长很长的字符串,那么这个三引号就可以派上用场了,因为它支持跨多行,而且在这个三引号的字符串里面你要用单引号和双引号都无所谓。


像这样:


""" MM:"噢,请你不要吻我"MM:"噢,请你不要吻"MM:"噢,请你不要"MM:"噢,请你不"MM:"噢,请你"MM:"噢,请"MM:"噢" """


Python 是完全看得懂的。



 我好像发现了什么不得了的事情!!!


4.转义


可能你会对这样的字符串「'"包钟480,包夜1200",她说。'」感到别扭,老子就想都用一种引号,不想要一下双引号一下单引号的行不行?


行行行,老子说什么就是什么!



那么这时候就可以用「转义」来解决,转义的符号是反斜杠「\」。


比如这句话「'"包钟480,包夜1200",她说。'」我们通过转义可以变成这样:


' \'包钟480,包夜1200\',她说。'


那么这个时候 Python 就能够看懂了, 现在这玩意「\'」在 Python 眼中就是「'」。



所以你可以把转义「\」理解为是为了让 Python 看的到我们想要表达的东西。



5.字符串的拼接


有时候我们需要两段话拼接在一起,对于 Python 来说so easy,只要像两个数字一样相加即可。


像这样:


x = "Hello, "

y = "World!"

x+y


这时候呢,「+」这个符号就把两个字符串连接起来了,在这里的 x+y 就等于 Hello,World!




6.原始字符串


有一些符号是代表特殊意义的,比如说 「\n」就代表换行。比如像这样:


print("小帅b\n我爱死你了。")


那么这时候在 Python 眼中就是:


小帅b

我爱死你了。



这很好啊, Python 很聪明还帮忙换行啦!


可是,有时候 Python 自作聪明了,比如说我们有这么一个在 c 盘下的一个叫做niubi的文件夹「C:\niubi」,那么我们这样打印的话:


print("C:\niubi")


结果你也知道了,路径被拆掉了。



这就尴尬了,不过还好,有个叫做原始字符串的东西,我们只要在前面加个「r」就相安无事了,这时候 Python 就知道,哦,原来你要的是原始字符串啊,那老子不帮你换行了,省的被说自作聪明。


我们只需要这样:


print(r"C:\niubi")




ok,Python基本数据类型之「字符串」就到这里,当然字符串的使用以后会经常用到的,对字符串的操作,字符串的序列,Unicode等是接下来需要了解使用的。



关注我,像看小黄文一样轻松学习 Python。




ps:还没获取我精心准备的 Python 电子书和思维导图等干货的可以在我的公众号「学习Python的正确姿势」中发送 python 免费获取哦! 

   

再ps:说真的,如果你能点个赞转发支持我一下那就好了哈哈。




顺手,点个赞


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存