查看原文
其他

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

2017-09-27 王大伟 Python爱好者社区

(点击上方图片或点击阅读原文报名)


作者:王大伟

Python爱好者社区唯一小编

博客:https://ask.hellobi.com/blog/wangdawei



前言

前文传送门:

Python从零开始系列连载(1)——安装环境

Python从零开始系列连载(2)——jupyter的常用操作

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


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

1.字符串的组成

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

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

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


日后再说


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

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

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

我们看一下:




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


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



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

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

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


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




这样就可以啦~


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


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


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


2.注释

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

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


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


单行注释

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


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


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

没错!就是这样!


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

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


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


小明无语凝噎。。。


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

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

它就可以多行注释



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


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




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

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



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


下课


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

3.转义

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

通俗的说就是意思变了


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


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



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

而 \n 则是换行符



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

 I 被退格键删除了



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

We中只删除了e


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



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


有时,我可能想打印 \t

虽然一般不会


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


可以采用两种措施:

1.字符串前面加r

2.再加一个反斜线



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


(1)字符串长度

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



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


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



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


(2)字符串连接

可以通过加号连接字符串


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



这样就好多啦~


(3)字符串索引

索引是什么,举个栗子吧


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

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

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


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

3号

(安静5秒钟)

4号

(安静五秒钟)

5号

小明,你是5号啊

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

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


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

 

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


Python有两种索引方式:

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

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



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



(4)字符串切片



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

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


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


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

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

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


吃点栗子理解一下:



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


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




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


下课


人生苦短,我选Python

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



更多精彩干货请戳~~~

业务知识一站通,懂业务,让你从技术人才中脱颖而出!

陈老师基于咨询公司从业经验与8年25个项目经验,精心打造业务知识体系课程。

访问 https://edu.hellobi.com/course/179 立即学习


福利:文末扫码立刻关注公众号,“Python爱好者社区”,开始学习Python课程:

关注后在公众号内回复“课程”即可获取:

1.崔老师爬虫实战案例免费学习视频。

2.丘老师数据科学入门指导免费学习视频。

3.陈老师数据分析报告制作免费学习视频。

4.玩转大数据分析!Spark2.X+Python 精华实战课程免费学习视频。

5.丘老师Python网络爬虫实战免费学习视频。



Python爱好者社区


为大家提供与Python相关的最新技术和资讯。

长按指纹 > 识别图中二维码 > 添加关注

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

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