字:
关灯 护眼
快眼看书 / 萌猫带我学python / 第29章 python字符串界定:捕捉小壁虎

第29章 python字符串界定:捕捉小壁虎

章节出错了,点此刷新,刷新后小编会在两分钟内校正章节内容,请稍后再试。

  数字之海中记忆漩涡在流动,在澎湃。
  苍月的意识随着漩涡进入到python之境中。
  毫无意外,她在python之境中,看到了自己和贤者大人。
  那是12岁的自己,贤者大人正在python之境中,教授给她python字符串的知识。
  “这个世界的一切知识都是基于python这门古语言构建的,所以如果你想要成为这个世界精英阶级的一员,你就必须学会python。”贤者大人平和地说到。
  “在过去几次的学习中,我们已经学习了python的来源和基础知识,变量赋值还有数值数据类型。你都记住了吗?”贤者大人低下头看着小苍月问道。
  “嗯。”小苍月抬起头望着贤者大人的猫型面具,点了点头。
  贤者大人并没有多说什么,他双手轻声合拍了一下,然后对苍月说:“你看看脚下是什么?”
  苍月低头看去,脚下不知什么时候,出现了一只小壁虎。
  这小壁虎五色斑斓,呆萌地一动不动。苍月蹲下身体,仔细地观察它。
  这只小壁虎显然也是在python之境中幻化出现的生物,虽然它看起来和正常的小壁虎没有什么区别。但是它的身体,从头到位却依次顺寻地呈现出5个白色的英文字母——abcde。
  苍月用手指去触摸这只小壁虎,但是它却突然嗖地一下子消失了。
  苍月环顾python之境,发现小壁虎已经跑到了自己正对面的白色墙壁上。
  它身上那几个英文字母变成了更显眼的黑色,和白色墙壁对比分明。
  “你想要抓住这只小壁虎,可不能用手,因为它是变量的一种幻化而已。你还记得我们应该使用什么形式,来界定和捕捉变量吗?”
  苍月听了贤者大人的话后,领悟到自己应该使用python方法,来捕获这只小壁虎。于是她伸出了右手,手掌出现一只月季花。月季花飘到白色墙壁的小壁虎身上,包裹住它,然后转变成为了一个python表达式。
  bihu=abcde
  贤者大人先是轻轻地点了点头,然后摇了摇头。
  白色墙壁上的表达式突然弹出了报错信息:
  NameError:name'abcde'isnotdefined
  苍月看着白色墙壁弹出的这条报错信息,一脸茫然。
  “要看懂这条信息其实很简单,分号是关键。这句话分号的前部分NameError的意思是命名错误。毕竟abced这串字符出现在python之境中前没有任何界定。所以,系统会自然地认为这是一个变量名称。但在之前的代码中,我们并没有设定过这样的一个叫做abcde的变量名称,所以冒号的后半句就会提示我们说,这个变量还没有定义过。”
  “当然,你也知道,由于python这门古语言是丹麦人发明的,所以使用英文而非中文提供报错信息,也成为了自然的事情。”
  “那我们要怎么样才能够捕捉到这只小壁虎呢?”
  贤者大人并没有直接答话,他对着白色墙壁轻轻一指,结果墙壁上的错误信息消失了之后,取而代之的是四条新语句出现:
  bihu='abcde'
  bihu=“abcde“
  bihu='''
  a
  b
  c
  d
  e
  '''
  “哦,原来是需要使用引号来将其界定出来啊!”苍月忍不住想到。
  “没错,就是这样。因为abcde实际上并不是变量名称,而是叫做字符串的数据类型。所以,我们在形式上用引号将其包裹起来。”贤者大人意识到了苍月所想,直接答复。
  “哦,原来用引号将内容包裹起来的数据类型就是字符串?”苍月忍不住地重复了一边。
  “既然都是字符串,那为什么还分别要使用单引号、双引号和三引号呢?它们之间有什么区别吗?”苍月忍不住地想到。
  由于贤者大人之前将有限的圣人之力注入到了小苍月的身体中,所以这就使得他在python之境中的时候能够直接读懂苍月的内心所想。
  “当然有区别。”贤者大人顿了顿后接着说,“长度和内容模式是决定你使用哪一种引号形式的重要区分标准。”
  “首先,你应该明确,在大多数情况下,创建一个比较短的字符串时,无论单引号还是双引号,区别不大。”
  “但如果需要创造一个特别长、包含了多个段落或多种符号的字符串时,单引号和双引号就不合适了。这时,需要使用三引号。”
  “三引号最大的作用,是可以将包含了多种形式的大段字符串原封不动地保存起来。”
  “比如,我们可以尝试现在将上面第三个表达式中字符串重新赋值到前面的两个表达式中,然后观察一下发生什么。”
  他们面前的白色墙壁重新闪烁了一下,然后苍月看到第一个表达式和第二个表达式中的内容形式也同样出现了变化。
  bihu='
  a
  b
  c
  d
  e
  '
  bihu=“
  a
  b
  c
  d
  e
  “
  可在这两个表达式刚显示出来,白色墙壁上就弹出了一个错误信息:
  SyntaxError:EOLwhilescanningstringliteral
  所以,你明白为什么python之境会弹出对应的错误了吗?
  “嗯,“小苍月点了点头,接着说到:“冒号是读懂这个错误语句的关键。SyntaxError是英文单词语法错误的意思。后面的EOLwhilescanningstringliteral表示在python之境在扫描字符串的时候遇到了错误。虽然这段英文没有之处什么错误,但是根据咱们之前学过的内容来看。其实非常简单,就是python之境,在扫描字符串的末端发现了一个回车,而不是默认的单引号或双引号”。
  “由于单引号和双引号都只能容纳,在一行没有什么特殊格式的字符串。但是刚才的这两个表达式,abcde这几个字符却占据了5行。这样跨越不同段落的字符串表达形式,只能用三引号来界定。”
  “非常好。”贤者大人看到苍月理解了不同引号的使用规则后,感到非常的高兴。
  他轻轻地拍了拍小苍月的头。
  眼前的白色墙壁突然一闪,那只小壁虎又一次出现了。。
  它的身上闪耀出abcde几个字母。
  苍月看着它,开心地笑起来。
热门推荐