Dấu ngoặc kép thoát python trong biến

Để trích dẫn một chuỗi trong Python, hãy sử dụng dấu ngoặc đơn bên trong 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)

đầu ra

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 ký tự và số

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

Bất cứ thứ gì nằm trong dấu ngoặc kép đều được hiểu là "văn bản" thay vì 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 thao tác Python thường thực thi. Nhưng vì biểu thức được bọc bên trong một chuỗi, nên biểu thức được in ra nguyên trạng

Nhưng đây là nơi nó trở nên thú vị. Hãy xem điều gì sẽ xảy ra khi bạn đặt một dấu ngoặc kép bên trong một chuỗi

print("This "test" causes problems")

Kết quả

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

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

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

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

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
4. Vì vậy, nó không biết phải làm gì

Để giải quyết vấn đề này, bạn có hai lựa chọn

  1. Sử dụng dấu ngoặc đơn bên trong dấu ngoặc kép (và ngược lại)
  2. Thoát dấu ngoặc kép bên trong chuỗi bằng dấu gạch chéo ngược

1. Dấu ngoặc đơn bên trong Dấu ngoặc kép

Để 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à dấu ngoặc đơn trong chuỗi bên trong
  • Sử dụng dấu ngoặc đơ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)

đầu ra

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?

Sau đó, bạn cần phải dùng đến cái được gọi là trình tự thoát. Những thứ này giúp bạn có thể thêm bao nhiêu dấu ngoặc kép vào một chuỗi tùy thích

2. Làm thế nào để thoát khỏi trích dẫn trong một chuỗi

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

Trong trường hợp này, hãy đặt nó trước bất kỳ dấu ngoặc kép nào bạn muố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)

đầu ra

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 ký tự đặc biệt giúp thoát chuỗi

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")

đầu ra

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

Để bao gồm dấu gạch chéo ngược trong một chuỗi, hãy thoát nó bằng 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 kép (_______1_______8)

Sử dụng một chuỗi ký tự được định dạng để thêm dấu ngoặc kép hoặc dấu ngoặc đơn xung quanh một biến trong Python, e. g. result = f'"{my_var}"'. Các chuỗi ký tự được định dạng cho phép chúng tôi bao gồm các biến bên trong một chuỗi bằng cách thêm tiền tố vào chuỗi bằng f

Các chuỗi ký tự được định dạng (chuỗi f) cho phép chúng tôi bao gồm các biểu thức bên trong chuỗi bằng cách thêm tiền tố vào chuỗi bằng f

Đảm bảo bọc biến trong dấu ngoặc nhọn - {my_var}

Lưu ý rằng chúng tôi đã bọc chuỗi f trong dấu nháy đơn để có thể sử dụng dấu nháy kép bên trong chuỗi

Điều quan trọng là phải xen kẽ giữa dấu ngoặc đơn và dấu ngoặc kép vì nếu không, bạn sẽ kết thúc sớm chuỗi f

Nếu bạn phải in biến trong dấu ngoặc đơn, hãy bọc chuỗi f trong dấu ngoặc kép

Bạn cũng có thể bao gồm các dấu ngoặc kép trong phần khai báo biến, nhưng hãy đảm bảo bọc biến trong dấu ngoặc đơn hoặc ba

Nếu một chuỗi được bọc trong dấu ngoặc đơn, chúng ta có thể sử dụng dấu ngoặc kép trong chuỗi mà không gặp vấn đề gì

Tuy nhiên, nếu chúng ta cố gắng sử dụng dấu ngoặc kép trong một chuỗi được bao trong dấu ngoặc kép, thì cuối cùng chúng ta sẽ kết thúc chuỗi sớm

Nếu bạn phải bao gồm cả dấu ngoặc đơn và dấu ngoặc kép trong chuỗi, hãy sử dụng chuỗi có dấu ngoặc kép

Nếu bạn cần có một trích dẫn kép ngay bên cạnh các trích dẫn kép kết thúc chuỗi ba trích dẫn, hãy thoát khỏi nó

Chuỗi trích dẫn ba rất giống với chuỗi cơ bản mà chúng ta khai báo bằng cách sử dụng dấu ngoặc đơn hoặc dấu ngoặc kép

Nhưng chúng cũng cho phép chúng ta

  • sử dụng dấu ngoặc đơn và dấu ngoặc kép trong cùng một chuỗi mà không thoát
  • xác định chuỗi nhiều dòng mà không cần thêm ký tự dòng mới

Chuỗi trong ví dụ sử dụng cả dấu ngoặc đơn và dấu ngoặc kép và không phải thoát bất cứ thứ gì

Cuối dòng được tự động bao gồm trong chuỗi trích dẫn ba lần, vì vậy chúng tôi không phải thêm ký tự xuống dòng ở cuối

Ngoài ra, bạn có thể sử dụng phương pháp str.format()

In một biến bên trong dấu ngoặc kép bằng cách sử dụng str. định dạng()

Để in một biến bên trong dấu ngoặc kép

  1. Sử dụng phương pháp str.format() để bọc biến trong dấu ngoặc kép
  2. Sử dụng hàm print() để in kết quả

Phương thức thực hiện các thao tác định dạng chuỗi

Chuỗi mà phương thức được gọi có thể chứa các trường thay thế được chỉ định bằng dấu ngoặc nhọn {}

Đảm bảo cung cấp chính xác số đối số cho phương thức format() khi bạn có các trường thay thế trong chuỗi

Bạn cũng có thể bao gồm các trích dẫn trong khai báo biến

Lưu ý rằng chúng tôi đã sử dụng dấu nháy đơn để ngắt chuỗi và dấu nháy kép bên trong chuỗi

Nếu chúng ta sử dụng dấu ngoặc đơn bên trong chuỗi mà không thoát khỏi chúng, chúng ta sẽ kết thúc chuỗi sớm