Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

Ví dụ không làm việc:

print(" \{ Hello \} {0} ".format(42))

Kết quả mong muốn:

 {Hello} 42 

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

Mateen Ulhaq

22.7K16 Huy hiệu vàng88 Huy hiệu bạc128 Huy hiệu đồng16 gold badges88 silver badges128 bronze badges

Đã hỏi ngày 29 tháng 3 năm 2011 lúc 0:04Mar 29, 2011 at 0:04

3

Bạn cần tăng gấp đôi

n = 42  
print(f" {{Hello}} {n} ")
9 và
 {Hello} 42
0:

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '

Đây là phần có liên quan của tài liệu Python cho cú pháp chuỗi định dạng:

Các chuỗi định dạng có chứa các trường thay thế trên mạng, được bao quanh bởi niềng răng xoăn

 {Hello} 42
1. Bất cứ điều gì không chứa trong niềng răng đều được coi là văn bản theo nghĩa đen, được sao chép không thay đổi với đầu ra. Nếu bạn cần bao gồm một ký tự nẹp trong văn bản theo nghĩa đen, nó có thể được thoát ra bằng cách nhân đôi:
n = 42  
print(f" {{Hello}} {n} ")
9 và
 {Hello} 42
0.

Đã trả lời ngày 29 tháng 3 năm 2011 lúc 0:08Mar 29, 2011 at 0:08

Greg Hewgillgreg HewgillGreg Hewgill

918K178 Huy hiệu vàng1134 Huy hiệu bạc1268 Huy hiệu đồng178 gold badges1134 silver badges1268 bronze badges

14

Python 3.6+ (2017)

Trong các phiên bản gần đây của Python, người ta sẽ sử dụng các chuỗi F (xem thêm PEP498).

Với F-String, người ta nên sử dụng Double

n = 42  
print(f" {{Hello}} {n} ")
9 hoặc
 {Hello} 42
0

n = 42  
print(f" {{Hello}} {n} ")

Sản xuất mong muốn

 {Hello} 42

Nếu bạn cần giải quyết một biểu thức trong ngoặc thay vì sử dụng văn bản theo nghĩa đen, bạn sẽ cần ba bộ dấu ngoặc:

hello = "HELLO"
print(f"{{{hello.lower()}}}")

sản xuất

{hello}

Bryan Bryce

1.2831 Huy hiệu vàng16 Huy hiệu bạc28 Huy hiệu đồng1 gold badge16 silver badges28 bronze badges

Đã trả lời ngày 21 tháng 12 năm 2017 lúc 11:12Dec 21, 2017 at 11:12

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

Divenexdivenexdivenex

13,5K9 Huy hiệu vàng53 Huy hiệu bạc54 Huy hiệu đồng9 gold badges53 silver badges54 bronze badges

6

Bạn thoát khỏi nó bằng cách nhân đôi niềng răng.

Eg:

x = "{{ Hello }} {0}"
print(x.format(42))

Đã trả lời ngày 29 tháng 3 năm 2011 lúc 0:08Mar 29, 2011 at 0:08

Greg Hewgillgreg HewgillKamil Kisiel

918K178 Huy hiệu vàng1134 Huy hiệu bạc1268 Huy hiệu đồng11 gold badges46 silver badges55 bronze badges

0

Python 3.6+ (2017)

Trong các phiên bản gần đây của Python, người ta sẽ sử dụng các chuỗi F (xem thêm PEP498).

Với F-String, người ta nên sử dụng Double

n = 42  
print(f" {{Hello}} {n} ")
9 hoặc
 {Hello} 42
0

Sản xuất mong muốn

import json
data = "1,2"
mydict = {"all": "false", "selected": data}
json.dumps(mydict)

Nếu bạn cần giải quyết một biểu thức trong ngoặc thay vì sử dụng văn bản theo nghĩa đen, bạn sẽ cần ba bộ dấu ngoặc:

'{{"all": false, "selected": "{}"}}'.format(data)

sản xuất

Bryan Bryce

1.2831 Huy hiệu vàng16 Huy hiệu bạc28 Huy hiệu đồng11 gold badges79 silver badges118 bronze badges

Đã trả lời ngày 21 tháng 12 năm 2017 lúc 11:12Jun 6, 2016 at 18:59

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

Divenexdivenextwasbrillig

13,5K9 Huy hiệu vàng53 Huy hiệu bạc54 Huy hiệu đồng9 gold badges40 silver badges62 bronze badges

5

Bạn thoát khỏi nó bằng cách nhân đôi niềng răng.

Kamil Kisielkamil Kisiel

Huy hiệu vàng 19.2k1146 Huy hiệu bạc55 Huy hiệu đồng

OP đã viết bình luận này:

 {Hello} 42 
0

Tôi đã cố gắng định dạng một JSON nhỏ cho một số mục đích, như thế này:

 {Hello} 42
6 để có được một cái gì đó như
 {Hello} 42
7

Điều khá phổ biến là vấn đề "thoát khỏi niềng răng" xuất hiện khi đối phó với JSON.

Tôi đề nghị làm điều này:Sep 24, 2021 at 20:37

Nó sạch hơn so với giải pháp thay thế, đó là:Nicoolasens

Sử dụng thư viện

 {Hello} 42
8 chắc chắn là thích hợp khi chuỗi JSON trở nên phức tạp hơn so với ví dụ.16 silver badges21 bronze badges

Nick T.

hello = "HELLO"
print(f"{{{hello.lower()}}}")
5

Đã trả lời ngày 29 tháng 3 năm 2011 lúc 0:08Mar 29, 2011 at 0:08

Greg Hewgillgreg Hewgillpajton

918K178 Huy hiệu vàng1134 Huy hiệu bạc1268 Huy hiệu đồng8 gold badges54 silver badges65 bronze badges

Python 3.6+ (2017)

 {Hello} 42 
1

Đã trả lời ngày 29 tháng 3 năm 2011 lúc 0:08Mar 29, 2011 at 0:08

Greg Hewgillgreg HewgillDNR

918K178 Huy hiệu vàng1134 Huy hiệu bạc1268 Huy hiệu đồng6 silver badges10 bronze badges

Python 3.6+ (2017)

 {Hello} 42 
2

Trong các phiên bản gần đây của Python, người ta sẽ sử dụng các chuỗi F (xem thêm PEP498).

Với F-String, người ta nên sử dụng Double

n = 42  
print(f" {{Hello}} {n} ")
9 hoặc
 {Hello} 42
0

Sản xuất mong muốnNov 5, 2015 at 11:22

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

Nếu bạn cần giải quyết một biểu thức trong ngoặc thay vì sử dụng văn bản theo nghĩa đen, bạn sẽ cần ba bộ dấu ngoặc:George Aprilis

sản xuất1 gold badge9 silver badges23 bronze badges

0

Bryan Bryce

 {Hello} 42 
3

1.2831 Huy hiệu vàng16 Huy hiệu bạc28 Huy hiệu đồngJun 24, 2019 at 19:55

Đã trả lời ngày 21 tháng 12 năm 2017 lúc 11:12Richard

Divenexdivenex21 silver badges21 bronze badges

2

13,5K9 Huy hiệu vàng53 Huy hiệu bạc54 Huy hiệu đồng

Bạn thoát khỏi nó bằng cách nhân đôi niềng răng.avoid having to double the curly brackets by using f-strings ONLY for the parts of the string where you want the f-magic to apply, and using regular (dumb) strings for everything that is literal and might contain 'unsafe' special characters. Let python do the string joining for you simply by stacking multiple strings together.

 {Hello} 42 
4

Kamil Kisielkamil Kisiel

Huy hiệu vàng 19.2k1146 Huy hiệu bạc55 Huy hiệu đồng

OP đã viết bình luận này:

Tôi đã cố gắng định dạng một JSON nhỏ cho một số mục đích, như thế này:

 {Hello} 42
6 để có được một cái gì đó như
 {Hello} 42
7Jul 6, 2021 at 21:55

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

Điều khá phổ biến là vấn đề "thoát khỏi niềng răng" xuất hiện khi đối phó với JSON.ccpizza

Tôi đề nghị làm điều này:15 gold badges158 silver badges155 bronze badges

1

 {Hello} 42 
6

Nó sạch hơn so với giải pháp thay thế, đó là:

 {Hello} 42 
7

Sử dụng thư viện

 {Hello} 42
8 chắc chắn là thích hợp khi chuỗi JSON trở nên phức tạp hơn so với ví dụ.

Nick T.Dec 23, 2021 at 17:49

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

24.9k11 Huy hiệu vàng79 Huy hiệu bạc118 Huy hiệu đồngdefiant

Đã trả lời ngày 6 tháng 6 năm 2016 lúc 18:5910 gold badges38 silver badges60 bronze badges

Twasbrilligtwasbrillig

 {Hello} 42 
8

15.8k9 Huy hiệu vàng40 Huy hiệu bạc62 Huy hiệu Đồng

Bạn muốn định dạng một chuỗi với ký tự

 {Hello} 42
9 hoặc
hello = "HELLO"
print(f"{{{hello.lower()}}}")
0Nov 29, 2016 at 23:43

tvt173tvt173tvt173

Bạn chỉ cần nhân đôi chúng.19 silver badges17 bronze badges

3

Định dạng

 {Hello} 42
9 với
hello = "HELLO"
print(f"{{{hello.lower()}}}")
2 và
hello = "HELLO"
print(f"{{{hello.lower()}}}")
0 với
hello = "HELLO"
print(f"{{{hello.lower()}}}")
4

 {Hello} 42 
9

Vì thế :

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
0

Đầu ra:

Đã trả lời ngày 17 tháng 12 năm 2019 lúc 9:37Dec 17, 2019 at 9:37

3

Tôi đến muộn một cách lố bịch đến bữa tiệc này. Tôi đang thành công khi đặt dấu ngoặc trong yếu tố thay thế, như thế này:

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
1

bản in nào

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
2

Nói đúng ra, đây không phải là điều OP đang hỏi, vì anh ấy muốn niềng răng trong chuỗi định dạng, nhưng điều này có thể giúp ai đó.

Đã trả lời ngày 11 tháng 12 năm 2020 lúc 19:05Dec 11, 2020 at 19:05

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

1

Lý do là,

 {Hello} 42
1 là cú pháp của
{hello}
1 vì vậy trong trường hợp của bạn
{hello}
1 không nhận ra
{hello}
3 vì vậy nó đã gây ra lỗi.

Bạn có thể ghi đè nó bằng cách sử dụng niềng răng đôi {{}},

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
3

hoặc

thử

{hello}
4 để định dạng văn bản,

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
4

Đã trả lời ngày 27 tháng 6 năm 2017 lúc 12:40Jun 27, 2017 at 12:40

Nếu bạn muốn in chỉ một mặt của nẹp xoăn:

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
5

Đã trả lời ngày 25 tháng 7 năm 2021 lúc 15:35Jul 25, 2021 at 15:35

DalyagdalyagDalyaG

2.8712 Huy hiệu vàng15 Huy hiệu bạc18 Huy hiệu đồng2 gold badges15 silver badges18 bronze badges

1

Tôi tình cờ thấy vấn đề này khi cố gắng in văn bản, mà tôi có thể sao chép dán vào một tài liệu latex. Tôi mở rộng câu trả lời này và sử dụng các trường thay thế được đặt tên:

Giả sử bạn muốn in ra một sản phẩm của các biến Mulitple với các chỉ số như, trong latex sẽ là

{hello}
5 Mã sau đây thực hiện công việc với các trường được đặt tên để đối với nhiều chỉ số, nó vẫn có thể đọc được:
Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?
, which in Latex would be
{hello}
5 The following code does the job with named fields so that for many indices it stays readable:

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
6

Đã trả lời ngày 19 tháng 11 năm 2019 lúc 18:56Nov 19, 2019 at 18:56

v.tralalav.tralalav.tralala

1.2631 Huy hiệu vàng13 Huy hiệu bạc34 Huy hiệu đồng1 gold badge13 silver badges34 bronze badges

Bạn có thể sử dụng "tường trích dẫn" để tách phần chuỗi được định dạng khỏi phần chuỗi thông thường.

From:

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
7

đến

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
8

Một ví dụ rõ ràng hơn sẽ là

>>> x = " {{ Hello }} {0} "
>>> print(x.format(42))
' { Hello } 42 '
9

Output:

n = 42  
print(f" {{Hello}} {n} ")
0

Bây giờ, thêm tường báo như vậy:

n = 42  
print(f" {{Hello}} {n} ")
1

Output:

n = 42  
print(f" {{Hello}} {n} ")
2

Đã trả lời ngày 31 tháng 12 năm 2020 lúc 21:13Dec 31, 2020 at 21:13

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

Ann Zenann ZenAnn Zen

26K7 Huy hiệu vàng33 Huy hiệu bạc54 Huy hiệu đồng7 gold badges33 silver badges54 bronze badges

2

Tôi đã sử dụng gấp đôi {{}} để ngăn chặn việc tiêm giá trị fstring,

Ví dụ: đây là câu lệnh cập nhật Postgres của tôi để cập nhật cột mảng số nguyên lấy biểu thức {} để chụp mảng, tức là:

cổng = '{100.200.300}'

với fstrings của nó,

n = 42  
print(f" {{Hello}} {n} ")
3

Tuyên bố truy vấn thực tế sẽ là,

n = 42  
print(f" {{Hello}} {n} ")
4

đó là một sự kiện sau đó là một postgres hợp lệ

Đã trả lời ngày 15 tháng 6 năm 2021 lúc 2:14Jun 15, 2021 at 2:14

perfecto25perfecto25perfecto25

7129 Huy hiệu bạc11 Huy hiệu đồng9 silver badges11 bronze badges

Nếu bạn muốn chỉ in một nẹp xoăn (ví dụ

 {Hello} 42
9), bạn có thể sử dụng
n = 42  
print(f" {{Hello}} {n} ")
9 và bạn có thể thêm niềng răng sau này trong chuỗi nếu bạn muốn. Ví dụ:only print one curly brace (for example
 {Hello} 42
9) you can use
n = 42  
print(f" {{Hello}} {n} ")
9, and you can add more braces later in the string if you want. For example:

n = 42  
print(f" {{Hello}} {n} ")
5

Đã trả lời ngày 23 tháng 3 năm 2020 lúc 1:32Mar 23, 2020 at 1:32

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

Khi bạn chỉ đang cố gắng nội suy các chuỗi mã, tôi sẽ đề xuất sử dụng jinja2, đây là một công cụ mẫu đầy đủ tính năng cho Python, tức là:

n = 42  
print(f" {{Hello}} {n} ")
6

Vì vậy, bạn sẽ không được thi hành để nhân đôi niềng răng xoăn vì toàn bộ câu trả lời khác

Đã trả lời ngày 2 tháng 4 năm 2020 lúc 11:00Apr 2, 2020 at 11:00

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

BPLBPLBPL

10k8 Huy hiệu vàng54 Huy hiệu bạc111 Huy hiệu đồng8 gold badges54 silver badges111 bronze badges

1

Nếu bạn cần niềng răng xoăn trong mẫu F-String có thể được định dạng, bạn cần xuất ra một chuỗi chứa hai niềng răng xoăn trong một bộ niềng răng xoăn cho chuỗi F:

n = 42  
print(f" {{Hello}} {n} ")
7

Đã trả lời ngày 28 tháng 1 năm 2021 lúc 9:40Jan 28, 2021 at 9:40

Hướng dẫn how do you use curly brackets in string python? - làm thế nào để bạn sử dụng dấu ngoặc nhọn trong chuỗi python?

RunorveithrunorveithRunOrVeith

4.1554 Huy hiệu vàng31 Huy hiệu bạc45 Huy hiệu Đồng4 gold badges31 silver badges45 bronze badges

2

Hay chỉ tham gia vào giá đỡ? Có lẽ rất dài dòng.

n = 42  
print(f" {{Hello}} {n} ")
8

Đã trả lời ngày 21 tháng 4 năm 2021 lúc 17:10Apr 21, 2021 at 17:10

MortzmortzMortz

4.5411 Huy hiệu vàng19 Huy hiệu bạc35 Huy hiệu đồng1 gold badge19 silver badges35 bronze badges

Việc sử dụng F {} trong Python là gì?

Việc phát hành Python phiên bản 3.6 được giới thiệu các chuỗi chuỗi được định dạng, được gọi là đơn giản là F F-String.Chúng được gọi là F-Strings vì bạn cần tiền tố một chuỗi với chữ cái 'F' để tạo chuỗi F.Chữ 'F' cũng chỉ ra rằng các chuỗi này được sử dụng để định dạng.for formatting.

Định dạng {} có nghĩa là gì trong Python?

Định nghĩa và sử dụng Phương thức định dạng () Định dạng (các) giá trị được chỉ định và chèn chúng bên trong trình giữ chỗ của chuỗi.Người giữ chỗ được xác định bằng dấu ngoặc xoăn: {}.formats the specified value(s) and insert them inside the string's placeholder. The placeholder is defined using curly brackets: {}.

Những dấu ngoặc xoăn {} trong chuỗi F được sử dụng để làm gì?

Bây giờ, chúng tôi sẽ thảo luận về việc sử dụng niềng răng xoăn trong dây F.Với niềng răng xoăn, chúng ta có thể chỉ định các giá trị của một biến trong một chuỗi.Xem mã bên dưới.Trong ví dụ trên, chúng tôi cung cấp giá trị của biến A sử dụng niềng răng xoăn theo nghĩa đen của chuỗi.specify the values of a variable in a string. See the code below. In the above example, we provide the value of the variable a using curly braces in the string literal.