Dấu ngoặc kép có quan trọng trong python không?

Để 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 [

He said 'See ya' and closed the door.
They said "We will miss you" as he left.
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ụ

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

đầu ra

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

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ụ

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

đầ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 [______18]

Bạn có thể sử dụng dấu ngoặc đơn và dấu ngoặc kép Python để tạo chuỗi. Không có sự khác biệt giữa hai. Không quan trọng bạn sử dụng phương pháp nào

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

Bất kể bạn sử dụng cái nào, vui lòng nhất quán với nó trong cơ sở mã. Không viết một chuỗi có dấu ngoặc kép và chuỗi kia có dấu nháy đơn

Ngoài ra, có một số điều cần lưu ý khi xử lý chuỗi trong Python. Hãy thảo luận ngắn gọn về chúng

Vấn đề với Dấu ngoặc kép bên trong Chuỗi

Nếu bạn sử dụng các từ như

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 trong một chuỗi có dấu nháy đơn, bạn cần xử lý việc diễn giải sai bằng Python

Ví dụ, chuỗi này là sai

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

đầu ra

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

Sự cố này phát sinh do Python thấy chuỗi có ba phần thay vì một chuỗi. Đây là những gì trình thông dịch Python nhìn thấy

  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]
    8
  2. He said 'See ya' and closed the door.
    They said "We will miss you" as he left.
    80
  3. He said 'See ya' and closed the door.
    They said "We will miss you" as he left.
    81

Đương nhiên, điều này sẽ không làm việc

Để tránh các chuỗi gây ra lỗi như thế này, bạn có thể sử dụng dấu ngoặc kép

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

đầu ra

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

Hoặc bạn có thể thoát dấu nháy đơn bằng dấu gạch chéo ngược như 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]
4

đầu ra

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

\’ cho trình thông dịch Python biết bạn muốn thoát khỏi ký tự ‘. Nói cách khác, bạn nói với trình thông dịch rằng ký tự thường kết thúc chuỗi này giờ là một phần của nó và sẽ bị trình thông dịch bỏ qua

Đọc thêm về cách trích dẫn một chuỗi Python

Làm thế nào về trích dẫn ba trong Python

Nếu bạn quen thuộc hơn với Python, bạn có thể biết rằng cũng có một loại chuỗi đặc biệt được tạo bằng dấu ngoặc kép ”’…”’

Đây được gọi là một chuỗi tài liệu. Nó có thể được sử dụng để ghi lại các hàm, lớp, mô-đun và kiểu

Ví dụ: một chuỗi tài liệu có thể trông như thế này

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]
6

Chuỗi tài liệu hoạt động cùng với hàm help[] trong Python. Khi bạn gọi help[] trên một đối tượng, nó sẽ trả về chuỗi tài liệu của đối tượng [nếu có]

Có thể sử dụng chuỗi tài liệu để giải quyết vấn đề về dấu ngoặc kép bên trong chuỗi. Nhưng bạn không nên làm điều đó vì chúng nhằm mục đích mã hóa tài liệu. Không viết chuỗi

Đọc thêm về docstrings trong Python

Sự kết luận

Trong Python, bạn có thể tạo một chuỗi có dấu ngoặc kép hoặc dấu ngoặc đơn. không có sự khác biệt

Khi sử dụng dấu ngoặc kép bên trong một chuỗi, đảm bảo thoát khỏi chúng để không gây ra lỗi cú pháp

Một dấu ngoặc kép ba trong chuỗi được sử dụng làm chuỗi tài liệu. Không sử dụng nó như một chuỗi thông thường

Chủ Đề