当前位置:首页 > 技术分析 > 正文内容

「Python教程」第6篇 Python基本语法之字符串

从本篇开始,我们开始学习Python的基本语法。

由于字符串是在程序中最常用到的数据类型,那么就先从字符串开始。

目录

  1. 如何表示字符串
  2. 多行字符串
  3. 转义字符
  4. 禁止转义
  5. 格式化字符串
  6. 关联文章列表

如何表示字符串

在Python中,字符串表示为使用英文输入状态的单引号或双引号包围的字符序列。以下是个单引号包围的示例:

'这是一个英文输入状态下的单引号包围的字符串'

以下是个双引号包围的示例:

"双引号包围的字符串"

单引号与双引号的功能是相同的,但是单引号要与单引号成对,双引号与双引号成对。引号必须是半角,不能是中文输入状态的全角符号

官方的建议是使用单引号,下面IDLE中的输出显示了这种规范,双引号包围的字符串会转化成单引号显示:

如果字符串中本身就包含了单引号或双引号,可以使用未包含的符号作为字符串定界符,在其中使用单引号或双引号。下面是示例:

'单引号包围的双引号"。'
"双引号包围的单引号'。"

IDLE输出图:

多行字符串

有时字符串有多行,就不能只使用一个单引号或双引号包围了,可以使用三个单引号或双引号包围,以下是单引号包围的多行字符串示例:

'''
这是多行字符串
里面有多行
'''

以下是双引号包围的多行字符串示例:

"""
这是双引号包围的
多行字符串
"""

同样,以下IDLE的输出显示多行字符串的规范也是使用单引号:

转义字符

在上例的多行字符串的IDLE的输出图中,出现了\n,这种在字符串中以\(反斜杠)开头的字符称为转义字符。

所谓转义,表示它是另一种含义,与字符本身的含义不同。以下是常见的转义字符:

说明:

1、\后缀一个无效的字符表示\和这个无效的字符本身,不会转义。

2、没有\s,在某些编程语言中\s表示空白符,但在Python中,\s表示\与s两个字符。

3、许多教程中都有\e,说明都是“转义”,但具体什么意思,没有人明白,一个简书作者查看了官方文档,根本没有\e,经自己测试,也完全没有影响。应该是翻译过程的谬误。下面IDLE中的输出可以证明这点:

禁止转义

有时并不需要转义,而需要字符串本身的含义,一个常见的例子是文件路径,可以在字符串前面加一个r表示字符串禁止转义,下面是一个示例:

r'D:\HP\IDE\Python\Python3.10\python.exe'

IDLE输出效果:

禁止转义前缀字母r不区分大小写,即大写的R也是一样的,不过根据编程规范,应该使用小写。下面是大写R的IDLE输出图:

格式化字符串

从Python3.6版本开始,支持字符串前缀f表示格式化字符串,先看一个下面的例子:

a = 1
b = 2
c = a + b
print(str(a) + '+' + str(b) + '=' + str(c))
print('%s+%s=%s' % (a,b,c))

第4行和第5行都输出1+1=2。

使用f格式化输出就可以使用下面的语句了:

print(f'{a}+{b}={c}')

它的输出与上述示例相同,但无论是从书写简短性,还是阅读理解性,f格式化都远胜于前两者。现代编程语言推荐使用这种形式。

其中{}包围的内容表示这是一个表达式,将会转换成表达式的值。

关联文章列表

  1. 「Python教程」第4篇 Python开发环境介绍
  2. 「Python教程」第5篇 Python程序结构


好了,本篇文章内容到此就结束了,大家有什么想说的欢迎在评论区留言。您的留言可以使得本文得到头条君更多的展现,拜托各位了,上一篇文章36%的点击率(超过100%同类作品),但没有评论,头条君也只给了三千展现,我知道这类学术性文章没有娱乐性的文章热度那么高,无论怎样,大家如果觉得文章不错,不要什么反应都没有,这样的话,本系列文章可能就没有后续了。

拜托各位读者,可以在评论区发表任何字数的任何有意义的言论。

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/3618.html

分享给朋友:

“「Python教程」第6篇 Python基本语法之字符串” 的相关文章

手把手教你Vue之父子组件间通信实践讲解【props、$ref 、$emit】

组件是 vue.js 最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用。那么组件间如何通信,也就成为了vue中重点知识了。这篇文章将会通过props、$ref和 $emit 这几个知识点,来讲解如何实现父子组件间通信。转载链接:https://www.jia...

vue3父子组件传对象,子组件访问修改父组件对象中的属性值

在Vue 3中,父子组件之间的数据传输通常通过props和emit进行。父组件可以通过props向下传递数据给子组件,子组件则可以通过emit向上通知父组件更新数据。如果需要在子组件中修改父组件对象中的属性值,可以使用一个名为ref的Vue 3新特性。以下是一个示例,演示了如何在Vue 3中实现父子...

10款超牛Vim插件,爱不释手了

我是一个忠实的Vim编辑器用户,从事开发工作多年,我一直都非常喜欢使用Vim。轻量、便捷,而且,熟悉了Vim相关的快捷键之后,效率能够成倍的提升。除了这些之外,Vim像很多知名的IDE、编辑器一样,也支持插件配置,通过这些插件,可以实现更多高级、高效的操作。今天,就来给大家分享10个我特别喜欢的Vi...

Gemini应用在Android上广泛推出2.0闪电模式切换器

#头条精品计划# 快速导读谷歌(搜索)应用的测试频道在安卓设备的双子应用中推出了2.0闪电实验功能,现已向稳定用户开放。双子应用通过谷歌应用运行,目前推出的15.50版本中,用户可通过模型选择器体验不同选项,包括1.5专业版、1.5闪电版和2.0闪电实验版。2.0闪电实验模型提供了更快的响应速度和优...

学前端,这30个CSS选择器,你必须熟记

你学会了基本的id,class类选择器和descendant后代选择器,然后就觉得完事了吗?如果这样,你就会错过许多灵活运用CSS的机会。虽然本文提到的许多选择器都属于CSS3,并且只能在现代的浏览器中使用,但学会这些是大有好处的。什么是CSS选择器呢?每一条css样式定义由两部分组成,形式如下:[...

最快清除数组空值?分享 1 段优质 JS 代码片段!

本内容首发于工粽号:程序员大澈,每日分享一段优质代码片段,欢迎关注和投稿!大家好,我是大澈!本文约 600+ 字,整篇阅读约需 1 分钟。今天分享一段优质 JS 代码片段,用最简洁的代码清除了数组中的空值。老规矩,先阅读代码片段并思考,再看代码解析再思考,最后评论区留下你的见解!const arr...