Python 中单引号和双引号有什么区别?
Python 使用引号来表示字符串对象。它们可以是单引号或双引号。这两种方法都是正确的,并且工作方式相同;但是,当这些引号一起使用时,就会出现差异。
在本文中,我们将学习单引号和双引号之间的区别。
Python 中的单引号
单引号应该用于在 Python 中包装小而短的字符串,例如字符串字面量或标识符。您必须记住,在用单引号表示字符串的同时,使用单引号作为字符串的一个字符将引发错误。在这种情况下,建议使用双引号。让我们通过一个例子来理解它。
示例
在以下示例中,我们将表示多种类型的字符串:单个单词、多个单词和多个句子。
name = 'Rahul' print(name) channel = 'Better Data Science' print(channel) paragraph = 'Rahul enjoys the content on Better Data Science. Rahul is awesome. Think like Rahul.' print(paragraph) hybrid = 'Hello "World"!' print(hybrid)
输出
如果我们执行上面的程序,则输出如下所示:
Rahul Better Data Science Rahul enjoys the content on Better Data Science. Rahul is awesome. Think like Rahul. Hello "World"!
示例
让我们看看下面另一个程序;在一个字符串中使用多个单引号。
hybrid = 'Rahul's World' print(hybrid)
输出
该程序引发了如下所示的语法错误:
File "/home/cg/root/96099/main.py", line 1
hybrid = 'Rahul's World'
^
SyntaxError: unterminated string literal (detected at line 1)
Python 假设字符串在“Rahul”之后结束,因此之后的任何内容都是语法错误。在代码编辑器中,此类错误很容易识别,因为 We 之后的部分颜色不同。
解决此问题的方法有
停止使用缩写(we are -> we're)——它们不方便。
转义字符串——这是我们接下来要研究的一个选项。
使用双引号。
转义字符串
转义字符串的基本目标是防止在计算机语言中使用某些字符。例如,我们不希望撇号被视为引号。
示例
要在 Python 中转义字符串字符,请使用反斜杠 (\) 符号
hybrid = 'Rahul's World' print(hybrid)
输出
上面此程序的输出如下所示:
Rahul's World
示例
但是,反斜杠在字符串中经常用作文字字符,例如表示计算机的路径。让我们看看如果您尝试打印带有转义字符的路径会发生什么。
print('C:\Users\John')
输出
如果我们编译并运行上面的程序,则会引发语法错误:
C:\Users\John C:\Users\John
可能不是您希望看到的。事实证明,有两种方法可以避免转义字符:
如果您使用的是原始字符串,请在第一个引号标记之前编写“r”。
使用双反斜杠有效地转义转义字符。
以下是如何执行这两者:
示例
#Write r before the first quote mark if you're using a raw string
print(r'C:\Users\John')
#Use a double backslash to effectively escape the escape character
print('C:\Users\John')
输出
如果我们执行上面的程序,则输出显示如下:
C:\Users\John C:\Users\John
这两条规则适用于用单引号和双引号括起来的字符串。现在,让我们在本章的后面进一步讨论在字符串中使用双引号。
Python 中的双引号
双引号推荐用于自然语言通信、字符串插值或当您知道字符串中将包含单引号时。让我们使用下面的示例更好地理解。
示例
让我们在下面的示例中看看可以使用双引号在 Python 中表示字符串的各种情况。
name = 'Rahul'
# Natural language
print("It is easy for us to get confused with the single and double quotes in Python.")
# String interpolation
print(f"{name} said he is free today.")
# No need to escape a character
print("We're going out today.")
# Quotation inside a string
print("my favourite subject is 'maths'")
输出
如果我们编译并运行上面的程序,则输出如下所示:
It is easy for us to get confused with the single and double quotes in Python. Rahul said he is free today. We're going out today. my favourite subject is 'maths'
如您所见,将引号嵌入到用双引号括起来的字符串中非常简单。我们也不需要像使用单引号那样转义字符。
示例
请记住,您不能在用双引号括起来的字符串中再次使用双引号。这将导致与单引号相同的语法问题。让我们在下面的示例中看看。
string = "He said, "I can't handle this anymore"." print(string)
输出
上面程序的输出如下所示:
File "/home/cg/root/22693/main.py", line 1
string = "He said, "I can't handle this anymore"."
^
SyntaxError: unterminated string literal (detected at line 1)
示例
为避免这种情况,您可以应用上一节的方法,但您可以改为用单引号括起字符串:
string = 'He said, "I cannot handle this anymore".' print(string)
输出
输出如下所示:
He said, "I cannot handle this anymore".
结论
在 Python 中,单引号和双引号字符串之间的区别微不足道。只要遵循编程约定,您可以将其中任何一个用于任何目的。在某些情况下,一种类型比另一种类型更具优势。
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP