单引号和双引号

在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如

str1 = 'python'

str2 = "python"

str1和str2是没有任何区别的。

我们知道Python以其易用性而著名,所以刚开始看教程学习看到单引号和双引号都可以使用会以为这是Python为了方便程序员,随便用哪个就好,不用担心用错。其实,背后的原因不只是这么简单。举个例子,想想I'm a big fans of Python.这个字符串应该怎么定义。

单引号版本:

str3 = 'I\'m a big fan of Python.'

可以注意到,原来的字符串中有一个',而Python又允许使用单引号' '来表示字符串,所以字符串中间的'必须用转移字符\才可以。字符串中间只有一个',这样写看起来还好,但是如果是We all know that 'A' and 'B' are two capital letters.这个字符串呢?

str4 = 'We all know that \'A\' and \'B\' are two capital letters.'

怎么样,是不是看起来就很不好看,而且很容易出错了?这个时候就是双引号也可以表示字符串该体现作用的时候了。下面是str4的双引号版本:

str4_ = "We all know that 'A' and 'B' are two capital letters."

这样是不是看起来就人性化多了?没错,这就是Python支持双引号和单引号都能用来定义字符串的原因。

反之,如果字符串中有双引号,为了避免使用转义符,你可以使用单引号来定义这个字符串。比如:

str5 = 'The teacher said: "Practice makes perfect" is a very famous proverb.'

这就是Python易用性和人性化的一个极致体现,当你用单引号' '定义字符串的时候,它就会认为你字符串里面的双引号" "是普通字符,从而不需要转义。反之当你用双引号定义字符串的时候,就会认为你字符串里面的单引号是普通字符无需转义。

3个单引号及3个双引号

实际上3个单引号和3个双引号不经常用,但是在某些特殊格式的字符串下却有大用处。通常情况下我们用单引号或者双引号定义一个字符串的时候只能把字符串连在一起写成一行,如果非要写成多行,就得在每一行后面加一个\表示连字符,比如:

str1 = "List of name:\

Hua Li\

Chao Deng"

而且即使你这样写也不能得到期望的输出:

List of name:

Hua Li

Chao Deng

实际上输出是下面这样的:

>>> str1 = "List of name:\

... Hua Li\

... Chao Deng"

>>> print(str1)

List of name: Hua Li Chao Deng

那么该如何得到我们期望的一行一个名字的输出格式呢?这就是3个引号的作用了:

>>> str1 = """List of name:

... Hua Li

... Chao Deng

... """

>>> print(str1)

List of name:

Hua Li

Chao Deng

虽然我们也可以通过给字符串加上\n实现:

>>> str1 = "List of name:\nHua Li\nChao Deng"

>>> print(str1)

List of name:

Hua Li

Chao Deng

但是这样在输入的时候看起来就乱了很多不是么?所以这种情况下尽量使用3个引号,至于3个单引号还是双引号都是一样的,只需要注意如果字符串中包含有单引号就要使用双引号来定义就好了。

而且使用3个引号还有一个特别棒的作用就是:加注释!

>>> str1 = """

... List of name:

... Hua Li # LiHua

... Chao Deng # DengChao

... """

>>> print(str1)

List of name:

Hua Li # LiHua

Chao Deng # DengChao

如果要实现这种输出效果,仅仅使用单引号或者双引号还能实现吗?

————————————————

版权声明:本文为CSDN博主「邓无邪」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/woainishifu/java/article/details/76105667

python3个引号啥意思_Python中单引号,双引号,3个单引号及3个双引号的区别相关推荐

  1. python输出文本格式的内容最常使用的引号是什么_python的print函数_无引号、单引号、双引号、三引号用法...

    print()函数的用法有以下几种:单亲匹马--不带引号:搭配单引号:搭配双引号:搭配三引号. 无引号 print(520)虽然只是一个简单的print,但背后,确实python代码帮你做了这样的一些 ...

  2. mysql sql语句 引号_关于sql:何时在MySQL中使用单引号,双引号和反引号

    我正在尝试学习编写查询的最佳方法. 我也理解保持一致的重要性. 到现在为止,我已经随机使用单引号,双引号和反引号而没有任何实际想法. 例: $query = 'INSERT INTO table (i ...

  3. python双引号和单引号区别_Python中单引号,双引号,3个单引号及3个双引号的区别...

    一.单引号和双引号 在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如 str1 = 'python' str2 = "python" str1和str2是没有 ...

  4. python中单引号和双引号的区别_python中单引号,双引号,多引号区别

    先说1双引号与3个双引号的区别,双引号所表示的字符串通常要写成一行 如: s1 = "hello,world" 如果要写成多行,那么就要使用\ ("连行符")吧 ...

  5. python单双三引号区别_python中单引号,双引号,多引号区别_python中单双引号

    python中单引号,双引号,多引号区别 先说1双引号与3个双引号的区别,双引号所表示的字符串通常要写成一行 如: s1 = "hello,world" 如果要写成多行,那么就要使 ...

  6. python中引号的使用规范_Python中单引号和双引号的作用

    一.单引号和双引号 在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如 str1 = 'python' str2 = "python" str1和str2是没有 ...

  7. python中单引号和双引号的区别_python中单引号,双引号,多引号区别_python中单双引号...

    python中单引号,双引号,多引号区别 先说1双引号与3个双引号的区别,双引号所表示的字符串通常要写成一行 如: s1 = "hello,world" 如果要写成多行,那么就要使 ...

  8. python中3个单引号_Python中单引号,双引号,3个单引号及3个双引号的区别

    单引号和双引号 在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如 str1 = 'python'str2= "python" str1和str2是没有任何区别 ...

  9. python单引号和什么的作用几乎是一样的_Python中单双多引号的用法与区别

    1.一个双引号和三个双引号 一个(对)双引号一般用于引用写在一行的字符串,s1="hello,world." 如果要写成多行,就用连行符: s1="hello,\ #经过 ...

最新文章

  1. NFS 安装配置及常见问题
  2. mysql gtid 搭建主从_MySQL5.7 - 基于GTID复制模式搭建主从复制
  3. 单高斯分布模型GSM,高斯混合模型GMM
  4. Mac免费使用MAMP搭建本地开发环境
  5. ubuntu下sublime中修改字体
  6. ios 构建版本一直在处理中_iOS -打包上传成功,在构建版本一直刷不出来
  7. IOS开发基础之OC的Block入门_Day09-Block
  8. 深入理解Presto
  9. 适配器模式之对象适配器
  10. bat中的“多线程”处理代码
  11. 验证码一(验证码生成)
  12. java webtable_java winform开发:JTable详解
  13. 框架详解_Selenium3框架详解
  14. 2022年电工(初级)考试试题及答案
  15. 通过.git/info/exclude文件配置忽略文件
  16. 阻止事件冒泡,阻止默认事件,event.stopPropagation()和event.preventDefault(),return false的区别
  17. Android开发中的WMS详细解析
  18. ModelAndView返回mav时,报404
  19. ROS学习笔记(十)——ROS试用练习(一)
  20. 针对python Gui初学者,一个极致简陋的gui,有空再补充

热门文章

  1. 2021年上半年总结
  2. 什么是.svn文件? SVN使用说明
  3. 【Linux】Ubuntu各版本号和名称对照
  4. iOS12网页视频播放点击全屏按钮会导致闪退
  5. js中every用法_Javascript Array.every()方法
  6. 广东省地铁行业发展现状与动态前景评估报告2022版
  7. Redis高可用之哨兵模式
  8. 第四届高等教育国际研讨会
  9. 详细的“BP神经网络数据分类—语音特征信号分类”代码
  10. 风枪bga芯片焊接方法参数技巧