Cách xóa dấu ngoặc đơn khỏi từ điển trong Python

Trong Python, các chuỗi được đặt trong dấu ngoặc đơn hoặc dấu ngoặc kép. Dấu ngoặc đơn có thể được thay thế bằng dấu ngoặc kép và ngược lại trong Python bằng bất kỳ phương pháp nào sau đây

Trích dẫn đơn đến trích dẫn kép và ngược lại

Sử dụng str. chức năng thay thế ()

1

2

3

4

str1 = "Đây là 'một chuỗi ví dụ"

a = str1. thay thế("'", "\"")

in(a)

 

đầu ra

1

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

Sử dụng hàm sub() trong gói re

1

2

3

4

5

nhập lại

str1 =  'Đây là "trích dẫn nhúng" bên trong chuỗi chính. '

str1_replaced = re. phụ("\"", "'", str1)

print(str1_replaced)

 

đầu ra

1

Đây một 'trích dẫn nhúng' bên trong < . main string.

Sử dụng str. maketrans()

1

2

3

4

5

6

string_trans = "'Tốt\", 'ngày"

# Hy vọng bạn biết tại sao chúng tôi phải thoát (\) dấu ngoặc kép chứ không phải dấu ngoặc đơn

# Đã thảo luận trước đó

stringn1 = string_trans. dịch(str. maketrans({'"': '\'', "'". "\""}))

print(stringn1)

 

đầu ra

1

"Tốt'," ngày

Sử dụng mô-đun JSON của Python

Chúng tôi sử dụng mô-đun này để thay thế dấu nháy đơn bằng dấu nháy kép trong danh sách chuỗi

1

2

3

4

5

nhập json

lst1 = ['Single1', "Double", 'Single2', 'Single3']

lst2 = json. kết xuất(lst1)

in(lst2)

 

đầu ra

1

["Đơn 1", "Đôi", "Single2", "Single3"]

Dấu ngoặc kép (dấu nháy đơn hoặc nháy kép) được sử dụng để tạo đối tượng chuỗi trong Python. Bài viết này sẽ thảo luận về cách thay thế dấu nháy đơn bằng dấu ngoặc kép

Dấu ngoặc kép trong Python

Một chuỗi Python chỉ có thể được mở và đóng bằng cùng một loại dấu ngoặc kép, dấu ngoặc đơn hoặc dấu ngoặc kép. Nói cách khác, về mặt cú pháp, một chuỗi ký tự kết thúc tại thời điểm dấu ngoặc kép thứ hai được tìm thấy, đơn hoặc kép (có một ngoại lệ đối với điều này. Tìm ra bên dưới)

1

2

3

valid_string = "Đây là một chuỗi ký tự hợp lệ. " # Bạn có thể sử dụng dấu nháy đơn ở đây

in(valid_string)

 

đầu ra

1

Đây a chuỗi hợp lệ literal.

1

2

3

invalid_s = "Phần này ổn" ab outside"

in(invalid_s)

 

đầu ra

1

Lỗi cú pháp. cú pháp không hợp lệ

Đoạn mã trên gặp lỗi cú pháp vì chuỗi kết thúc ở trích dẫn thứ hai, và do đó Python không mong đợi các ký tự đến sau đó là ab bên ngoài”

Nói đến đây chúng ta có thể thấy dấu ngoặc kép là ký tự đặc biệt trong Python. Tuy nhiên, dấu gạch chéo ngược (\) có thể được sử dụng làm ký tự thoát để chuyển đổi dấu ngoặc kép thành ký tự chuỗi ký tự. Ví dụ

1

2

escaped_quote = "Phần này vẫn ổn\" ab bên ngoài"

in(escaped_quote)

đầu ra

1

Phần này OK " ab outside

Trong ví dụ này, dấu ngoặc kép thứ hai đã được xử lý như một ký tự chuỗi thông thường và do đó được in ra

Nếu một dấu ngoặc kép thuộc một loại khác được sử dụng bên trong một chuỗi, thì chúng được coi là ký tự chuỗi ký tự

1

2

3

4

5

embedded_quote1 = "Phần này là 'dấu ngoặc kép được nhúng' bên ngoài"

embedded_quote2 = 'Phần này là "dấu ngoặc kép được nhúng" bên ngoài'

in(embedded_quote1)

in(embedded_quote2)

 

đầu ra

1

2

Phần này 'dấu ngoặc kép được nhúng' bên ngoài<

Phần này "dấu ngoặc kép nhúng" bên ngoài<

Thay thế dấu nháy đơn trong Python bằng dấu nháy kép và ngược lại [giải thích chi tiết]

Trong Python, điều này có thể đạt được thông qua các phương thức khác nhau, chẳng hạn như sử dụng str. thay thế () hoặc lại. phụ(). Gói json sẵn có có thể được sử dụng để thay thế các dấu nháy đơn bằng dấu nháy kép trên danh sách các chuỗi

lưu ý 1. Thay thế dấu ngoặc kép trong bài viết này có nghĩa là thay thế dấu ngoặc kép trong một chuỗi hợp lệ và không thay thế dấu ngoặc kép bao quanh chính chuỗi đó

Phương pháp 1. Sử dụng str. chức năng thay thế ()

1

2

3

4

5

string1 = "'Quản trị tốt là điều người dân mong muốn. ' - Thống đốc nói"

# dấu gạch chéo ngược tạo dấu ngoặc kép cho ký tự chuỗi ký tự

# dấu ngoặc kép thuộc loại khác được coi là một chuỗi bình thường

# khi nó xuất hiện giữa dấu ngoặc kép xác thực

in(string1. thay thế("'", "\""))

đầu ra

1

"Quản trị tốt là điều người dân mong muốn. " - Thống đốc đã nói.

1

2

string2 = 'Đây là "trích dẫn nhúng" trong chuỗi chính. '

in(string2. thay thế('"', "'"))

đầu ra

1

Đây một 'trích dẫn nhúng' trong < . the main string.

Phương pháp 2. Sử dụng hàm sub() trong gói re

Gói re trong Python nắm bắt các mẫu trong chuỗi bằng cách sử dụng các biểu thức chính quy. Ở đó. hàm sub() có ích trong ứng dụng của chúng ta. Nó có thể được sử dụng để tìm và thay thế các chuỗi con trong chuỗi chính. Dưới đây là một số ví dụ về cách tái. phụ() có thể được sử dụng

1

2

3

4

nhập lại

string_re = "Đây là 'trích dẫn nhúng' bên trong chuỗi chính. "

substring_replaced = re. phụ("'", "\"", string_re)

in(substring_replaced)

đầu ra

1

Đây một "trích dẫn nhúng" bên trong < . the main string.

Phương pháp 3. Sử dụng hàm translate() trong Python

Chức năng này, cùng với str. maketrans(),  thay thế một hoặc nhiều ký tự dựa trên các định nghĩa được tạo trong từ điển Python hợp lệ, như minh họa bên dưới. Từ điển dịch thuật phải có một ký tự duy nhất làm khóa

1

2

3

4

5

string_trans = "book'pencil\"ink'pen'rubber"

# Hy vọng bạn biết tại sao chúng tôi phải thoát khỏi dấu ngoặc kép và không phải dấu ngoặc đơn

# Đã thảo luận trước đó

stringn1 = string_trans. dịch(str. maketrans({'"': '\'', "'". "\""}))

print(stringn1)

đầu ra

1

sách"bút mực"bút " cao su

Đoạn mã trên thay thế dấu nháy kép bằng dấu nháy đơn và ngược lại

Phương pháp 4. Sử dụng mô-đun JSON

Đây là trường hợp đặc biệt để thay thế dấu ngoặc đơn trong danh sách chuỗi bằng dấu ngoặc kép. Đó là một tiêu chuẩn cho gói json để sử dụng dấu ngoặc kép trên các chuỗi trong danh sách do đó cần có sự thay thế này

1

2

3

b_list = ['Elijah', "Caroline", "Tomasz", "Smith"]

b_list = json. kết xuất(b_list)

in(b_list)

đầu ra

1

["Elijah", "Caroline", "Tomasz", "Smith"]

1

2

3

b_list1 = 'Elijah'

b_list1 = json. kết xuất(b_list1)

in(b_list1)

đầu ra

1

"Ê-li"

Lưu ý rằng có dấu ngoặc kép trong đầu ra trong trường hợp thứ hai. Điều này là do dấu ngoặc kép là một phần của chuỗi trong trường hợp này. Trong thực tế thông thường, json thay thế dấu ngoặc đơn bằng dấu ngoặc kép trên danh sách lò xo như trong ví dụ đầu tiên. Trường hợp thứ hai ít được sử dụng vì nó không có trường hợp nào thường được sử dụng

Tôi có thể sử dụng phương thức Clear() để xóa từ điển không?

Phương thức clear() xóa tất cả các phần tử khỏi từ điển .

Làm cách nào để chuyển đổi dấu ngoặc đơn thành dấu ngoặc kép trong từ điển Python?

dumps() để chuyển từ điển thành chuỗi có dấu ngoặc kép, e. g. json_str = json. bãi (my_dict). json. Phương thức dumps() chuyển đổi một đối tượng Python thành một chuỗi có định dạng JSON với các khóa và giá trị chuỗi của từ điển được đặt trong dấu ngoặc kép.