奋飞的猪 发表于 2019-10-13 13:18:12

python idle中单引号'和双引号“的区别

本人刚开始学习python,遇到了一些疑惑。为什么有时候单引号和双引号都可以用的原因。我在网上找了一些资料。希望可以给同有疑惑的小伙伴们解惑。
总的来说,一般情况,单引号和双引号通用。
一、python中的print函数

    最基本的Hello world

>>> print("hellow world")
   遇到的坑:1.C语言写习惯了经常打成printf(多了一个f),导致运行失败
                   2.python shell环境下  输入完这行代码后直接敲回车就能看到运行结果,不用编译运行

  3.python shell 环境下 例如"hellow world " 也能看到结果,但在pycharm这个编辑器里只写“hellow world”运行会报错

查知乎得到的答案是:python shell下是交互环境,它会默认把每一句的返回值输出到屏幕。

二、单引号、双引号、三引号

>>> print('This is a string using a single quote!')
          
This is a string using a single quote!
>>> print("This is a string using a single quote!")
          
This is a string using a single quote!
>>> print('''This is a string using a single quote!''')
          
This is a string using a single quote!
 如上所示,三种引号的输出结果是相同的 

 但请试想一下如果我们想输出 i don't want to go die 时,那么应该怎么办呢?

方法一:
print( "i don't want to go die")
 注:开头和结尾成对出现的双引号,定义了这个字符串,而其中的‘ 则被认为是字符串中的一个字符

方法二:
>>> print('i don\'t want to go to die')
转义字符 反斜杠(\) ,使 (')被认为是一个字符

三引号:

三引号的作用:利用三引号可以实现输出多行文本,例如:
>>>print("""hello world
how old are you
how are you""")
可以等同于
>>>print("hello world\nhow old are you \nhow are you")
最后结果都为
hello world
how old are you
how are you

这是我的一点看法,有不同意见的朋友可以一起讨论哦!

MrThinco 发表于 2019-10-13 15:56:18

楼主说得很好,那我就补充一下其他语言的吧。在JavaScript中:单引号和双引号中都是字符串,没有区别。单双号必须成对出现,和Python类似。
在PHP中:虽然单双引号,中都是字符串,但是单引号中不解析变量,而双引号中可以解析变量。

奋飞的猪 发表于 2019-10-13 19:01:46

假面的假面 发表于 2019-10-13 16:54
听了小甲鱼关于python的第三讲课程留下的作业也在自己测试。关于单引号双引号的用途。
另外很想知道小甲鱼 ...

还有其他的方式,我记得小甲鱼在第一版中前面几集中讲过了。我也是新手,我也搞忘了。

奋飞的猪 发表于 2019-10-13 19:54:03

假面的假面 发表于 2019-10-13 16:54
听了小甲鱼关于python的第三讲课程留下的作业也在自己测试。关于单引号双引号的用途。
另外很想知道小甲鱼 ...

小甲鱼在第四集讲了,可以在双引号前加一个r,那么,你就可以原封不动的打印引号里面的内容了。不需要再加额外的转义字符了。
页: [1]
查看完整版本: python idle中单引号'和双引号“的区别