新网工在YESLAB   

IT技术专业学习平台
IT人才专业服务提供商

 

VUE考试注册预约电话:010-82608710

全国热线:400-004-8626

【Python三国连载】第二回 乱世之枭雄

首页    技术博文    Python/Linux    【Python三国连载】第二回 乱世之枭雄

这一回讨论Python的字符串数据类型

 

对酒当歌,人生几何!
唱着唱着,我们的另一位主角出场了。
这位就是曹小瞒,外号设计师,后面会说到小瞒朋友设计了什么精密机关,能当得上设计师这个称号。不过小瞒希望大家叫他大诗人。

 

譬如朝露,去日苦多。
 
说着说着,又唱起来了,是不是喝多了。成为大诗人那必须要懂喝,就像是欲练神功,必。。。搞串了,那是金庸小说不是三国。话说回来,大诗人是崇拜酒神杜康的,喝酒分为两派,一派是酒神下凡,特征就是酒后狂放,佳句天成,或者是变得力大无穷,浑身是胆。另一派是神经错乱派,特征是轻则昏昏沉沉,胡言乱语,重则酒后狂乱,甚至乎狂暴异常。
 
慨当以慷,忧思难忘。
何以解忧?唯有杜康。

 

很显然,大诗人是酒神下凡派的。为了把大诗人美妙绝伦的语句收录下来,下面,我们介绍一个Python的关键数据类型,字符串。
 

上一回的彩蛋中,各位同学看到了我们用引号将内容包括起来,然后通过print( )这个内置函数来打印输出。函数我们在后面回合也会详细说明。现在我们来介绍一下引号的用法。

 

 
Cao1 = '青青子衿'
Cao2 = '悠悠我心'
Cao3 = "但为君故"

Cao4 = "沉吟至今"

 

 
无论是单引号还是双引号,只要成对使用,都是用于定义字符串,然后上面四个语句,分别将不同字符串内容赋值给了四个不同的变量。但是切记不要使用中文输入法的引号,因为Python解释器无法识别。
 
我们可以用上一回介绍的在线解释平台来做一个练习。
假如使用这个海外平台(也可以使用国内平台):
https://www.tutorialspoint.com/execute_python3_online.php
 
将下面代码复制到上述网址提供的输入框中,看看结果。
这是执行结果:
输出是什么?对,没错!字符串内容合并了。但是格式不对啊,没有符号,没有换行。怎么办?
 
按照下面方式调整一下就可以了。
字符串中的\代表转义符,后面跟的符号用于代表特别功能,例如n就是换行的意思,r就是回车的意思。
 
效果如图:
这样是不是效果就好多了。大诗人志得意满,不禁挥剑怒吼。
 
细心的同学也已经发现了,上面代码中还穿插着#这个特殊符号。

 

#在代码中代表着注释,仅仅是给编写代码或者检查代码的程序猿来查看以便理清思路的,并不会被实际执行。根据使用的位置也分为段落注释和行尾注释。
 
我们设计复杂一点的玩法,将大诗人这个震古烁今的名号也打印出来。见识一下:
效果那是杠杠的:
不管是单引内嵌入双引,还是双引内嵌入单引,都可以实现字符串里包含引号的效果。当然你也可以通过\'或者\"的方法来完成这个任务。
问题是这一会儿大白天的,哪里来的月亮呢,莫非是大诗人已经物我两忘了么,又或是大诗人怒吼过度,化身狼人,想把月亮嚎出来不成?拦不住了拦不住了,大诗人的情绪导入已经到达了最高亢的阶段了:
通过三引号(可以是三个单引号对,也可以是三个双引号对),可以完整展示大诗人放声高歌的最后段落:
 
这一把大诗人痛快了,御剑而唱了足足30分钟。
 
旁边刘关张不死鸟三人组可憋坏了,小黑侠可是麦霸啊,这回连麦都碰不上 ,只好等大诗人刚刚唱完最后一句,余音绕梁奔着三天不散去的时候来一句,“我左手一式太极拳,右手一剑刺身前,扫腿这招叫清雪,破轻功飞燕。”这可把大诗人从屋梁上吓了下来。
 
小红神搭腔说:“你就是设计师对吧,我们是参加VR世界赛的不死鸟战队。”
 
“是的,我就是大诗人,中国赛区的VR场景是我负责设计的。我用两年时间设计了这个游戏,可以实现通过VR接入到五维世界中。”
 
博士就是博士,“五维世界要不就是时空穿梭,要不就是平行宇宙。”
 
“不错不错,这个游戏的名字就叫做乱世之枭雄,每一支战队都有独立的作战室,我准备了VR仓,就像星际航行中的睡眠仓。每个人进入自己的VR仓后,就可以到达游戏时空。游戏的目标是寻找五色拼图。找齐五色拼图的战队,就可以开启永恒之门,进入到世界赛阶段。”
 
“这么说来,这个游戏是平行宇宙不是时空穿梭。平行宇宙是开启独立副本,而时空穿梭则会扰乱时空。”
 
“小伙子有前途啊,我看好你。VR仓如何操控需要练习,你们陪我玩一个游戏,我就带你们去练习室。你们要把我刚才诗歌中的逗号都替换成闪电。”(疯掉了把,逗号变成闪电,万一纸烧起来怎么办?万一击伤小朋友的眼睛怎么办?是想让小朋友念诗的时候跳鬼畜舞吗?)
 
“这是通过字符串方法来实现的,字符串可以使用find( )方法、count( )方法,还有replace( )方法来执行各种任务,语法上是字符串.find( )、字符串.count( ),还有字符串.replace( ),也就是说在字符串后面通过小数点然后连接一个方法函数即可,然后在括号内加上要找的子字符串。”博士还是那个博士。
 
“我奇筋异脉力破天,一身正气荡人间,除暴安良我心愿,老师傅再见。”喂,你不能走。“那就用find( )方法吧,我来写一个。”小黑侠说。
“不行的,find是查找的意思,是用于查找子字符串,然后返回所在位置的信息,不是替换。”博士懂得真多。
 
“那就用count( )方法吧,我来写一个。”小红神说。
“不行的,count是计数的意思,是用于统计子字符串个数,然后返回统计数量的信息,也不是替换。”
 
“看看我的写法。”
输出效果是这样的:
“我早知道你们能搞定。大功告成了,我这就带你们到练习室去。”大诗人满意地说。
 
留一个作业给愿意思考的同学吧。用format( )这个方法输出下面一段话:
Python有四种基本数据类型,分别为:
1,整数型;
2,浮点型;
3,布尔型;
4,字符串。
 
参考答案在文末。
 
现在总结知识点。先说一下出场人物:
  • 曹小瞒,外号设计师,也叫大诗人。乱世之枭雄这个VR游戏的设计师。
 

那么Python的知识点是什么呢?

就是关于字符串的一些使用方法以及注意事项:

  • 单引号对和双引号对都可以用来定义字符串,这是短字符串,需要用\n等符号来定义格式。

  • 可以单引号嵌入双引号,或者双引号嵌入单引号,不能同类嵌入。

  • 三引号对(三个单引或三个双引均可)也可用于定义字符串,这是长字符串,里面可以保留原始格式。

  • 引号必须是英文字符,引号内的符号可以是中文字符,例如中文的逗号,中文的句号,等等。

  • #这个符号代表注释。可作段落注释或者行尾注释。

  • 字符串的一些常用方法包括有find( )、count( )、replace( )等等,语法为字符串.方法,方法通常带( )。

 
现在公布作业答案:
 
代码输入以及结果展示如下:
文末小彩蛋
 
现在来解释一下作业答案:
 
{ }这是占位符的意思,{0}代表调用format( )方法中的第一个变量或值,{1}代表调用format( )方法中的第二个变量或值,以此类推。使用format( )作为格式化输出,还能做出很多高效的事情,例如:
 
感谢大家看到最后。
《Python三国连载》我们会持续更新
点个喜欢,支持一下我们哟!

 

Python 实战训练营

有没有兴趣和我们一起轻松玩转Python?

 

 

新网工学习平台

新网工创新知识传播社区

人人都是新网工,新网工在YESLAB

 

2020年11月19日 15:18
浏览量:0
收藏