Python(一)——双引号 (“) 和 单引号 (‘) 的区别

一句话:

引用内容中有单引号用双引号,有双引号用单引号,其他随意。(大多数情况下)

具体介绍如下:

在 Python 中,双引号 (")单引号 (') 在功能上是等效的,用来定义字符串时没有区别。可以根据个人习惯、代码风格或实际需求选择任意一种,但在某些特定场景下,它们的选择可能会影响代码的可读性或减少转义字符的使用。


1. 没有区别的情况:设置文件路径

无论用单引号还是双引号,效果完全一样:

# 单引号
file_path = './data/processed/30kmh_processed/file.csv'

# 双引号
file_path = "./data/processed/30kmh_processed/file.csv"

print(file_path)  # 输出: ./data/processed/30kmh_processed/file.csv

2. 什么时候选择用单引号 ' 或双引号 "

2.1 根据字符串内容选择
  • 如果字符串中包含单引号 ',优先用双引号 ",避免转义:

    sentence = "It's a beautiful day!"
    

    而如果使用单引号,则需要转义:

    sentence = 'It\'s a beautiful day!'
    
  • 如果字符串中包含双引号 ",优先用单引号 ',避免转义:

    dialog = 'She said, "Hello, world!"'
    

    而如果使用双引号,则需要转义:

    dialog = "She said, \"Hello, world!\""
    

  • 2.2 一致性

    在一个项目中,为了保证代码一致性,可以选择统一用单引号或双引号。常见的约定:

  • 单引号:用于一般字符串。
  • 双引号:用于多行字符串或字符串中包含单引号的情况。

  • 2.3 多行字符串

    多行字符串需要用三引号('''"""),通常推荐双引号 """,因为更常见。

    multi_line_string = """
    This is a multi-line
    string that spans
    several lines.
    """
    

    3. 注意事项:原始字符串与引号

    当使用原始字符串(前缀 r)时,如果引用内容最后不是以 反斜杠 \ 结束,单引号和双引号仍然可以按上述规则选择:

    file_path = r'C:\Users\YourName\Documents\file.txt'
    file_path = r"C:\Users\YourName\Documents\file.txt"
    

    但当引用内容最后是以 反斜杠 \ 结束时, 直接使用单引号或双引号都会报错。这是因为:如果字符串以反斜杠结尾,Python 会尝试将其与后面的字符结合,解析为一个转义序列。原始字符串 r'' 中虽然不会处理转义字符,但反斜杠作为最后一个字符时,Python 会认为后面还需要更多字符(它尝试解析转义字符,但没有内容可用)。这导致语法错误。

    如果路径需要以 \ 结尾,可以添加一个额外的反斜杠来让其正确转义:

    file_path = r"C:\Users\YourName\Documents\file\\"
    
    
    

    4. 总结

    1. 功能无区别,单引号和双引号可以自由选择。
    2. 选择建议
    3. 字符串内有单引号时,用双引号 "
    4. 字符串内有双引号时,用单引号 '
    5. 保持项目中使用一致的引号风格。
    6. 多行字符串:用三引号(推荐 """)。
    7. 原始字符串:不是以 反斜杠 \ 结束时,引号选择与普通字符串一致。

    别忘了给这篇文章点个赞哦,非常感谢。我也正处于学习的过程,如果有问题,欢迎在评论区留言讨论,一起学习!

    作者:八年。。

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python(一)——双引号 (“) 和 单引号 (‘) 的区别

    发表回复