Python从零开始系列连载(2)——Python的基本数据类型(下)

Python的基本数据类型——字符串

1.字符串的组成

字符串,通俗的说就是字符组成的一串内容,例如'Python大法好'、'Y45160100'、'PG one'

划重点:''表示空字符串(空字符串就是字符串里没有内容)

字符串是不可变对象,至于什么是不可变对象

 

日后再说

 

字符串之所以区别于其他数据类型,是因为它是被包含在引号里面的

你可以用单引号,也可以用双引号

划重点:但是不能一边单引号,一边双引号!

我们看一下:

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

第三个:两边不一致所以出错了

 

当然,有时候我们必须单引号和双引号都得使用:

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

例如我相把她说的话和所有内容都用单引号嵌套,发现报错了

大家可以看到实际被单引号引用的是红色的内容,中间有一段是黑色的没被包括进去

这是因为,派森会从左到右自动扫描到一对单引号就把它俩匹配一起

 

为了解决这个问题,我们同时使用单引号和双引号

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

这样就可以啦~

 

其实连续三个单引号或者双引号也可以,不过一般我们不用

 

什么?你问为什么,你不觉得打这么多很累么,hhhhh

 

说到三个引号,我们要说一**释了

 

2.注释

注释,是对书籍或文章的语汇、内容、背景、引文作介绍、评议的文字。

说得通俗一点就是多写点内容帮助理解

 

Python中的注释分为单行注释多行注释:

 

单行注释

在每行代码前写一个井号,则这行代码不会被运行

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

运行之后发现报错,看一下报错信息,意思是a这个变量没被定义(因为你a=1定义的这行前面有个井号,是被注释了,程序不会执行)

 

其实大家发现没,之前上课讲到的Markdown和这里的注释好像功能相似

没错!就是这样!

 

如果我连续很多行都要注释呢?

小明:我知道,每行前面加一个#不就行了么,hhhh,我真是个天才

 

小明啊,如果我有10000行,你还这样做么?

 

小明无语凝噎。。。

 

好了,我们讲一下多行注释怎么弄

还记得刚才我们嫌弃的三个引号么

它就可以多行注释

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

a的内容确实被注释掉了,所以打印a的内容会报错

 

当然,除了三个单引号,三个双引号也是ok的

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

一直看报错的不太舒服,虽然我们是将用法

来看个正常运行的(没有注释):

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

今天作业:按照我的操作走一遍(敢不敢换个其他的说法)

 

下课

 

Python的基本数据类型——字符串

3.转义

转义转义,顾名思义,就是转换含义

通俗的说就是意思变了

 

Python用反斜杠(\)来转义字符

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

我们举几个例子理解一下:

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

这里的 \t 是横向制表符,也就是空出四个空格的长度

而 \n 则是换行符

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

这里的\b是退格,也就是我们键盘上常用的Backspace

 I 被退格键删除了

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

退格键只会删除前面一个字符,而不是所有字符

We中只删除了e

 

还记得我们上节课说的单引号双引号同时使用的例子么

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

加了转义符,就可以只使用一种引号啦 ♪(^∇^*)

 

有时,我可能想打印 \t

虽然一般不会

 

这时候我怎么样让这个转义不生效呢

 

可以采用两种措施:

1.字符串前面加r

2.再加一个反斜线

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

4.常用字符串相关操作方法

 

(1)字符串长度

用len()函数,可以查看字符串的长度

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

划重点:字符串中的空格也是占长度的,空串:""/'' 长度是零

 

中文,字母,数字,符号都是占一个长度

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

包含转义字符的字符串长度是把每个转义字符当成一个字符,即 \t 是一个字符长度,而不是看上去的两个

 

(2)字符串连接

可以通过加号连接字符串

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

直接连接显示很不友好,我们加一下空格

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

这样就好多啦~

 

(3)字符串索引

索引是什么,举个栗子吧

 

我们这学期还没上几次课吧,我就记住了小明和小红,我们班一共40个人吧

咦,我数了一下怎么就15个好像,奇怪

我不是针对其他同学,我是想说,在座的其他人我都不知道名字

 

好了,学号是1~40,点个名吧

3号

(安静5秒钟)

4号

(安静五秒钟)

5号

小明,你是5号啊

-------------------------------------------------

每个同学都有一个学号,通过学号这个标签我们能找到对应的同学,这就是索引

 

小明:那索引学了有什么用呢?感觉没用啊!

 

小明啊,你不还没开始学么。。。

 

Python有两种索引方式:

(1)从前往后的正向索引:有m个字符长度的字符串,索引值是0~m-1(计算机很多都是从0开始标序号的)

(2)从后往前的负数索引:有m个字符长度的字符串,索引值是-1~-m

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

如果我们下标索引越界了(超过了以上规定的范围),则会报错:

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

(4)字符串切片

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

切片:顾名思义,把东西切成片,如果把字符串看成一根黄瓜,切出一部分下来是不是就是切片呢

说的专业一点就是,取出字符串中的子串!

 

切片最标准的写法是用两个冒号分割三个数字

 

第一个数字表示切片的开始位置(索引)

第二个数字表示切片的截至位置,但是不包括这个位置,也就是切到它的前一个位置结束(索引)

第三个表示切片的步长(切片的厚度),当省略步长时候,默认为1,可以省略后一个冒号

 

吃点栗子理解一下:

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

如果还是看不懂,可以留言评论哦

 

当然,如果越界了,不会报错哦~

 

Python从零开始系列连载(2)——Python的基本数据类型(下)

 

今天作业:按照我的操作走一遍(敢不敢换个其他的说法)

 

下课

 

人生苦短,我选Python

未完待续,连载中......