Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi

Để trích dẫn một chuỗi trong Python, hãy sử dụng các dấu ngoặc kép bên trong các dấu ngoặc kép hoặc ngược lại.

Ví dụ:

example1 = "He said 'See ya' and closed the door."
example2 = 'They said "We will miss you" as he left.'

print(example1)
print(example2)

Output:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.

Chuỗi Python

Chuỗi Python là chuỗi các ký tự và số.

Một chuỗi được bọc xung quanh một tập hợp các trích dẫn đơn hoặc trích dẫn kép. Không có sự khác biệt trong đó bạn sử dụng.

Bất cứ điều gì đi vào bên trong các trích dẫn đều được hiểu là là văn bản khác, thay vào đó là một lệnh thực thi.

Để chứng minh, đây là một số ví dụ.

print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)

Trong mỗi ví dụ, có một hoạt động Python thường sẽ thực thi. Nhưng bởi vì biểu thức được bọc bên trong một chuỗi, biểu thức được in ra.

Nhưng đây là nơi nó trở nên thú vị. Hãy để xem những gì xảy ra khi bạn đặt một báo giá kép bên trong một chuỗi:

print("This "test" causes problems")

Result:

  File "example.py", line 1
    print("This "test" causes problems")
                 ^
SyntaxError: invalid syntax

Điều này xảy ra bởi vì trình thông dịch Python nhìn thấy một chuỗi biểu thức trong ba phần:

  1. print("10 + 20")                  # Prints: 10 + 20
    print("This # is not a comment")  # Prints: This # is not a comment
    print("pow(2,3)")                 # Prints: pow(2, 3)
    3
  2. print("10 + 20")                  # Prints: 10 + 20
    print("This # is not a comment")  # Prints: This # is not a comment
    print("pow(2,3)")                 # Prints: pow(2, 3)
    4
  3. print("10 + 20")                  # Prints: 10 + 20
    print("This # is not a comment")  # Prints: This # is not a comment
    print("pow(2,3)")                 # Prints: pow(2, 3)
    5

Nó nhìn thấy hai chuỗi và tham chiếu đến một đối tượng không tồn tại

print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)
4. Vì vậy, nó không biết phải làm gì.

Để xem xét vấn đề này, bạn có hai tùy chọn:

  1. Sử dụng các trích dẫn đơn trong trích dẫn đôi (và ngược lại).
  2. Thoát khỏi các trích dẫn bên trong một chuỗi với một dấu gạch chéo ngược. the quotes inside a string with a backslash.

1. Trích dẫn duy nhất bên trong trích dẫn đôi

Để viết một chuỗi được trích dẫn bên trong một chuỗi khác trong Python

  • Sử dụng dấu ngoặc kép trong chuỗi bên ngoài và trích dẫn đơn trong chuỗi bên trong
  • Sử dụng các trích dẫn đơn trong chuỗi bên ngoài và dấu ngoặc kép trong chuỗi bên trong

Đây là một ví dụ:

example1 = "He said 'See ya' and closed the door."
example2 = 'They said "We will miss you" as he left.'

print(example1)
print(example2)

Output:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.

Nhưng nếu điều này là không đủ thì sao? Điều gì sẽ xảy ra nếu bạn muốn có báo giá bên trong báo giá?

Sau đó, bạn cần phải dùng đến những gì được gọi là trình tự thoát. Chúng làm cho nó có thể thêm nhiều trích dẫn trong một chuỗi như bạn muốn.

2. Cách thoát khỏi báo giá trong chuỗi

Để thêm các chuỗi được trích dẫn bên trong các chuỗi, bạn cần thoát khỏi các dấu ngoặc kép. Điều này xảy ra bằng cách đặt một dấu gạch chéo ngược (

print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)
7) trước khi nhân vật trốn thoát.

Trong trường hợp này, đặt nó trước bất kỳ dấu ngoặc kép nào bạn muốn trốn thoát.

Đây là một ví dụ.

example1 = "This is a \"double quote\" inside of a double quote"
example2 = 'This is a \'single quote\' inside of a single quote'

print(example1)
print(example2)

Output:

This is a "double quote" inside of a double quote
This is a 'single quote' inside of a single quote

Cách sử dụng dấu gạch chéo ngược trong chuỗi sau đó

Trong Python, dấu gạch chéo ngược là một nhân vật đặc biệt làm cho chuỗi thoát có thể.

Nhưng điều này cũng có nghĩa là bạn không thể sử dụng nó bình thường trong một chuỗi.

Ví dụ:

print("This\is\a\test")

Output:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
0

Để bao gồm một dấu gạch chéo ngược trong một chuỗi, hãy thoát nó với một dấu gạch chéo ngược khác. Điều này có nghĩa là viết một dấu gạch chéo ngược đôi (

print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)
8).

Ví dụ:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
1

Output:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
2

Để bao gồm một dấu gạch chéo ngược trong một chuỗi, hãy thoát nó với một dấu gạch chéo ngược khác. Điều này có nghĩa là viết một dấu gạch chéo ngược đôi (print("10 + 20") # Prints: 10 + 20 print("This # is not a comment") # Prints: This # is not a comment print("pow(2,3)") # Prints: pow(2, 3)8).

Sự kết luận

Hôm nay bạn đã học cách trích dẫn một chuỗi trong Python.

Cảm ơn vì đã đọc. Tôi hy vọng bạn thích nó!

Mã hóa hạnh phúc!

Đọc thêm

Python Double Trích dẫn so với trích dẫn đơn

Python thường xuyên để lại cho bạn các tùy chọn, và trích dẫn cũng không ngoại lệ. Sự khác biệt giữa trích dẫn đơn và đôi Python là gì? Bạn nên sử dụng cái nào? Khi nào người ta có một lợi thế so với người kia? Báo giá ba là gì? Thật dễ dàng để bị nhầm lẫn nếu bạn là người mới bắt đầu.

Bạn thấy đấy, Python khác rất nhiều so với, hãy nói Java. Trong Java, bạn phải sử dụng dấu ngoặc kép cho chuỗi và chỉ được phép sử dụng các trích dẫn đơn cho các ký tự. Đó không phải là thỏa thuận với Python. Bạn có sự linh hoạt hơn nhiều so với các ngôn ngữ được gõ tĩnh. Nhưng nó thực sự là một điều tốt? Tiếp tục đọc để tìm hiểu.But is it actually a good thing? Continue reading to find out.

Không cảm thấy muốn đọc? Thay vào đó xem video của tôi:


Các trích dẫn duy nhất được sử dụng cho trong Python là gì?

Trong Python, đó là một thông lệ tốt nhất để sử dụng các trích dẫn đơn lẻ để bao quanh các chuỗi nhỏ và ngắn, chẳng hạn như chữ viết hoặc định danh. Nhưng đây là thỏa thuận - đó không phải là một yêu cầu. Bạn có thể viết toàn bộ đoạn văn và bài viết bên trong các trích dẫn đơn.

Dưới đây là một vài ví dụ:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
3Image 1 - Ví dụ về trích dẫn đơn (hình ảnh của tác giả)
Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Image 1 - Single quotes example (image by author)

Không có giới hạn ký tự được đặt cho nội dung giữa các trích dẫn đơn, nhưng có một vài gotchas bạn chắc chắn sẽ gặp. Cái đầu tiên là dấu ngoặc kép bên trong một chuỗi.

Vấn đề với dấu ngoặc kép bên trong một chuỗi

Ngôn ngữ tiếng Anh có đầy đủ các dấu ngoặc kép (dấu nháy đơn). Ví dụ, tôi có thể viết chúng ta là hoặc chúng ta, và cả hai đại diện cho cùng một điều. Lựa chọn cho tùy chọn thứ hai là có vấn đề nếu bạn muốn sử dụng các trích dẫn đơn cho các chuỗi xung quanh trong Python:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
4Image 2 - Lỗi cú pháp Khi in chuỗi bằng dấu ngoặc (hình ảnh của tác giả)
Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Image 2 - Syntax error when printing a string with quotation marks (image by author)

Python nghĩ rằng chuỗi kết thúc sau

print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)
9, vì vậy mọi thứ sau khi nó được coi là một lỗi cú pháp. Bạn có thể dễ dàng phát hiện ra các lỗi như thế này trong các trình chỉnh sửa mã, vì phần sau
print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)
9 có màu khác nhau.

Có ba cách xung quanh nó:

  1. Ngừng sử dụng các cơn co thắt (chúng tôi là -> chúng tôi) - không thực tế chút nào. (we are -> we're) - Not practical at all.
  2. Thoát khỏi một chuỗi - một khả năng chúng ta sẽ khám phá tiếp theo. - A possibility we'll explore next.
  3. Sử dụng trích dẫn kép - một cái gì đó chúng tôi sẽ đề cập sau. - Something we'll cover later.

Thoát một chuỗi trong Python

Ý tưởng chính đằng sau việc thoát khỏi một chuỗi là ngăn chặn một số ký tự nhất định được sử dụng như một phần của ngôn ngữ lập trình. Ví dụ, chúng tôi không muốn dấu nháy đơn được coi là dấu ngoặc kép.

Trong Python, bạn có thể sử dụng dấu hiệu Backslash (

print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)
7) để thoát khỏi ký tự chuỗi:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
5Image 3 - Thoát một nhân vật trong Python (hình ảnh của tác giả)
Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Image 3 - Escaping a character in Python (image by author)

Thật tuyệt, nhưng dấu gạch chéo ngược thường được sử dụng như một ký tự theo nghĩa đen trong các chuỗi - ví dụ, để thể hiện một đường dẫn trên máy tính. Hãy xem điều gì sẽ xảy ra nếu bạn cố gắng in một đường dẫn bằng ký tự thoát:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
6Image 4 - Lỗi cú pháp khi sử dụng ký tự thoát không hợp lệ (hình ảnh của tác giả)
Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Image 4 - Syntax error when using invalid escape character (image by author)

Có lẽ không phải những gì bạn muốn xem. Hóa ra, bạn có thể thoát khỏi nhân vật trốn thoát theo hai cách:

  1. Bằng cách sử dụng chuỗi thô - Viết
    print("This "test" causes problems")
    2 trước dấu ngoặc kép đầu tiên.
    - Write
    print("This "test" causes problems")
    2 before the first quotation mark.
  2. Sử dụng Double Backslash - Điều này về cơ bản sẽ thoát khỏi nhân vật thoát. - This will essentially escape the escape character.

Đây là cách sử dụng cả hai:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
7Image 5 - Hai cách để sử dụng dấu gạch chéo ngược bên trong chuỗi (hình ảnh của tác giả)
Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Image 5 - Two ways to use backslash inside a string (image by author)

Hai người này áp dụng cả cho các chuỗi được bao quanh với trích dẫn đơn và đôi. Chúng tôi chưa bao gồm các trích dẫn kép, vì vậy hãy làm điều đó tiếp theo.

Báo giá kép được sử dụng cho trong Python là gì?

Nó được coi là một thông lệ tốt nhất để sử dụng các trích dẫn kép cho các thông điệp ngôn ngữ tự nhiên, nội suy chuỗi và bất cứ khi nào bạn biết sẽ có các trích dẫn duy nhất trong chuỗi.

Dưới đây là một vài ví dụ:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
8Image 6 - Sử dụng trích dẫn kép trong Python (hình ảnh của tác giả)
Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Image 6 - Using double quotes in Python (image by author)

Như bạn có thể thấy, chúng ta có thể dễ dàng nhúng trích dẫn vào các chuỗi được bao quanh bởi các dấu ngoặc kép. Ngoài ra, không cần phải thoát khỏi một nhân vật như chúng ta phải có với các trích dẫn duy nhất.

Hãy ghi nhớ: Bạn không thể sử dụng báo giá đôi một lần nữa trong một chuỗi được bao quanh bởi các trích dẫn kép. Làm như vậy sẽ dẫn đến cùng một lỗi cú pháp như với các trích dẫn đơn:: you can't use double quotes again in a string surrounded by double quotes. Doing so will result in the same syntax error as with single quotes:

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
9Image 7 - Lỗi cú pháp Khi sử dụng dấu ngoặc kép bên trong chuỗi trích dẫn kép (hình ảnh của tác giả)
Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Image 7 - Syntax error when using double quotes inside a double quote string (image by author)

Để giảm thiểu, bạn có thể sử dụng lại giải pháp từ phần trước, nhưng bạn cũng có thể bọc chuỗi trong các trích dẫn đơn thay thế: thay vào đó

print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)
0Image 8 - Sử dụng dấu ngoặc kép trong chuỗi (hình ảnh của tác giả)
Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Image 8 - Using double quotes in a string (image by author)

Bây giờ bạn đã biết cách sử dụng cả trích dẫn đơn và đôi trong Python. Chúng tôi sẽ tóm tắt lại sự khác biệt và giới thiệu các thực tiễn tốt nhất tiếp theo.

Sự khác biệt giữa dấu ngoặc kép đơn và kép trong Python là gì?

Dưới đây là bảng tóm tắt trả lời câu hỏi bạn nên sử dụng trích dẫn đơn hoặc kép trong Python:

Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Hình ảnh 9 - Sự khác biệt giữa trích dẫn đơn và đôi trong Python (hình ảnh của tác giả)

Nói tóm lại, bạn có thể sử dụng cả hai trong tất cả các trường hợp, nhưng dấu ngoặc kép thường được sử dụng với văn bản và chuỗi dài hơn. Không có ai cấm bạn sử dụng các trích dẫn duy nhất ở khắp mọi nơi, nhưng bạn sẽ phải cẩn thận hơn, vì các trích dẫn đơn lẻ nhạy cảm hơn với các ký tự cụ thể.

Có một số khuyến nghị chính thức từ những người tạo ra Python, vì vậy chúng ta hãy vượt qua chúng tiếp theo.

Python Single Vs. Double Trích dẫn PEP8

Theo PEP8:

  • PEP không đưa ra khuyến nghị về việc sử dụng trích dẫn đơn hay đôi - chọn một quy tắc và tuân thủ nó.
  • Khi một chuỗi được bao quanh với các trích dẫn đơn, hãy sử dụng dấu ngoặc kép bên trong nó để tránh dấu gạch chéo ngược.
  • Khi một chuỗi được bao quanh với dấu ngoặc kép, hãy sử dụng các trích dẫn đơn bên trong nó để tránh dấu gạch chéo ngược.
  • Khi sử dụng các chuỗi được trích dẫn ba, luôn luôn sử dụng các ký tự trích dẫn kép bên trong nó.

Chúng tôi sẽ đi qua ba chuỗi trích dẫn và các trường hợp sử dụng của chúng trong thời gian ngắn.

Trích dẫn đơn so với đôi thực hành tốt nhất

Thực tiễn tốt nhất cho các chuỗi được trích dẫn đơn lẻ:

  • Đảm bảo chuỗi có phần ngắn hoặc bạn đang xử lý một chuỗi chữ
  • Hãy chắc chắn rằng không có trích dẫn duy nhất bên trong chuỗi, vì việc thêm các ký tự thoát có khả năng đọc.

Thực tiễn tốt nhất cho các chuỗi được trích dẫn kép:

  • Sử dụng dấu ngoặc kép cho nội suy văn bản và chuỗi.
  • Sử dụng dấu ngoặc kép khi có trích dẫn bên trong một chuỗi - bạn có thể dễ dàng bao quanh trích dẫn với các trích dẫn đơn.

Bạn nên sử dụng trích dẫn đơn hay đôi trong Python?

Câu trả lời cuối cùng là - nó phụ thuộc, chủ yếu vào sở thích phong cách của bạn. Python không tạo ra bất kỳ sự khác biệt nào giữa trích dẫn đơn và đôi, vì vậy quyết định tùy thuộc vào bạn.depends, mostly on your style preferences. Python doesn't make any difference between single and double quotes, so the decision is up to you.

Những gì bạn không nên làm là liên tục chuyển đổi giữa các trích dẫn đơn và đôi trong một tệp Python hoặc một mô -đun. Chọn một trong những bạn thích hơn và phù hợp với nó.

Trích dẫn ba trong Python

Đúng - thậm chí còn có một loại trích dẫn thứ ba trong Python. Những điều này có bộ lợi thế riêng của họ:

  • Bạn có thể sử dụng cả trích dẫn đơn và đôi bên trong chúng.
  • Bạn có thể chia chuỗi thành nhiều dòng.
  • Chúng được coi là một thực tiễn tốt nhất khi viết tài liệu.

Hãy xem qua một vài ví dụ:

print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)
1Image 10 - Trích dẫn ba trong Python (hình ảnh của tác giả)
Hướng dẫn python single quote in string - Python trích dẫn đơn trong chuỗi
Image 10 - Triple quotes in Python (image by author)

Như bạn có thể thấy, không có ký tự trích dẫn ba chuyên dụng trên bàn phím, vì vậy chúng tôi viết chúng bằng ba hoặc ba trích dẫn kép. Ưu điểm lớn nhất là bạn có thể chia chuỗi thành nhiều dòng chỉ bằng cách nhấn ENTER, điều này cải thiện hoàn toàn khả năng đọc.

Tuy nhiên, một trường hợp sử dụng chính cho trích dẫn ba là chuỗi tài liệu (tài liệu) cho các chức năng:

print("10 + 20")                  # Prints: 10 + 20
print("This # is not a comment")  # Prints: This # is not a comment
print("pow(2,3)")                 # Prints: pow(2, 3)
2

Bạn tự do sử dụng cả

print("This "test" causes problems")
3 và
print("This "test" causes problems")
4 để bao quanh một tài liệu, nhưng quy ước là sử dụng cái sau.


Sự kết luận

Câu chuyện dài ngắn - Sự khác biệt giữa các chuỗi được trích dẫn đơn và đôi trong Python là tối thiểu. Bạn có thể sử dụng một trong hai cho bất cứ điều gì - chỉ cần đảm bảo tuân thủ các quy ước lập trình của bạn. Có một số trường hợp sử dụng khi một loại có cạnh so với loại kia, & nbsp; nhưng đây là rất ít.

Các chuỗi được trích dẫn đơn có thể gây ra một số rắc rối nếu có các trích dẫn bên trong chuỗi, vì vậy hãy ghi nhớ điều đó. Chuỗi được trích dẫn kép là một cược an toàn hơn, nhưng không đủ để chọn cái này hơn nhau.

Tìm hiểu thêm

  • Tuyên bố của Python IF -Else trong một dòng - Toán tử Ternary giải thích
  • Phù hợp với mô hình cấu trúc Python - 3 trường hợp sử dụng hàng đầu để giúp bạn bắt đầu
  • Dask bị trì hoãn - Cách song song hóa mã Python của bạn một cách dễ dàng

Giữ liên lạc

  • Hãy đăng ký để nhận thư mới từ tôi
  • Đăng ký trên YouTube
  • Kết nối trên LinkedIn

Bạn có thể sử dụng các trích dẫn đơn cho chuỗi không?

Chuỗi được trích xuất đơn: Đó là cách dễ nhất để xác định một chuỗi.Bạn có thể sử dụng nó khi bạn muốn chuỗi được chính xác như nó được viết.Tất cả các chuỗi thoát như \ r hoặc \ n, sẽ được đầu ra theo quy định thay vì có bất kỳ ý nghĩa đặc biệt nào.Quan điểm đơn thường nhanh hơn trong một số trường hợp.You can use it when you want the string to be exactly as it is written. All the escape sequences like \r or \n, will be output as specified instead of having any special meaning. Single-quote is usually faster in some cases.

Bạn có thể sử dụng các trích dẫn đơn trong Python không?

Trong Python, chuỗi các ký tự như vậy được bao gồm bên trong các trích dẫn đơn hoặc đôi.Theo như cú pháp ngôn ngữ có liên quan, không có sự khác biệt trong chuỗi được trích dẫn đơn hoặc kép.Cả hai đại diện có thể được sử dụng thay thế cho nhau.Both representations can be used interchangeably.

Làm thế nào để bạn thêm một trích dẫn duy nhất vào một chuỗi?

Sau đây là các chuỗi của chúng tôi với trích dẫn đơn và đôi.Chuỗi str1 = "Đây là điện thoại di động của Jack";Chuỗi str2 = "\" Đây là \ "!";Ở trên, đối với một trích dẫn đơn, chúng ta phải đề cập đến nó bình thường.Tuy nhiên, đối với các trích dẫn kép, sử dụng các trích dẫn sau và thêm một dấu gạch chéo ngay từ đầu cũng như ở cuối.String str1 = "This is Jack's mobile"; String str2 = "\"This is it\"!"; Above, for single quote, we have to mention it normally like. However, for double quotes, use the following and add a slash in the beginning as well as at the end.