Hướng dẫn what %f means in python? - % f có nghĩa là gì trong python?

9

Show

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi mới ở đây và cũng mới với Python. Tôi tự hỏi

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
6 trong
>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
7 làm gì. Tôi đã thử xóa nó và sau đó
>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
8 trở thành chuỗi bình thường.

Bạn có thể vui lòng cho tôi biết những cuộc gọi

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
6, vì vậy tôi có thể Google tìm hiểu thêm về nó không? Cảm ơn các bạn.

import csv

with open('CSV_test.txt') as csv_file: 
    csv_reader = csv.reader(csv_file, delimiter=',')
    line_count = 0
    for row in csv_reader:
        if line_count == 0:
            print(f'Column names are {"-".join(row)}')
            line_count += 1
        else:
            print(f'\t{row[0]} works in the {row[1]} '
                  f'department, and was born in {row[2]}.')
            line_count += 1
    print(f'Processed {line_count} lines.')

Hướng dẫn what %f means in python? - % f có nghĩa là gì trong python?

Đã hỏi ngày 4 tháng 10 năm 2019 lúc 9:18Oct 4, 2019 at 9:18

2

Điều này được gọi là dây F và khá đơn giản: khi sử dụng "F" phía trước chuỗi, tất cả các biến bên trong dấu ngoặc xoăn được đọc và thay thế bởi giá trị có. Ví dụ :

    age = 18
    message = f"You are {age} years old"
    print(message)

Sẽ trở lại "bạn 18 tuổi"

Điều này tương tự như str.format (https://docs.python.org/3/l Library/stdtypes.html#str.format) nhưng theo cách ngắn gọn hơn.

Đã trả lời ngày 4 tháng 10 năm 2019 lúc 9:28Oct 4, 2019 at 9:28

RowinrowinRowin

3751 Huy hiệu bạc9 Huy hiệu đồng1 silver badge9 bronze badges

0

Chuỗi bắt đầu với F được định dạng theo nghĩa đen.

Giả sử bạn có một biến:

>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
0

Để kết hợp nó vào một chuỗi bạn đã làm:

>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
1

Chuỗi định dạng có ích ở đây. Sử dụng chúng, bạn có thể sử dụng điều này làm như vậy:

>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
2

>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
3 chỉ đơn giản được thay thế bằng giá trị trong
>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
4

Hướng dẫn what %f means in python? - % f có nghĩa là gì trong python?

Đã trả lời ngày 4 tháng 10 năm 2019 lúc 9:26Oct 4, 2019 at 9:26

QuantaquanaQuanta

5443 Huy hiệu bạc22 Huy hiệu Đồng3 silver badges22 bronze badges

Phương thức

>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
5 Trả về một chuỗi trong đó các phần tử của chuỗi đã được nối bởi một dấu phân cách. Trong mã của bạn, nó lấy danh sách hàng và tham gia sau đó bằng cách phân tách
>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
6.

Sau đó, bằng cách sử dụng chuỗi F, biểu thức được chỉ định bởi

>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
7 sẽ được thay thế bằng giá trị của nó.

Giả sử rằng

>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
8 sau đó đầu ra sẽ là
>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'
9.

Đã trả lời ngày 4 tháng 10 năm 2019 lúc 9:30Oct 4, 2019 at 9:30

Hướng dẫn what %f means in python? - % f có nghĩa là gì trong python?

3

Các chuỗi F cung cấp một cách để nhúng các biểu thức bên trong các chữ viết, sử dụng cú pháp tối thiểu. Cần lưu ý rằng một chuỗi F thực sự là một biểu thức được đánh giá tại thời điểm chạy, không phải là một giá trị không đổi. Trong mã nguồn Python, một chuỗi F là một chuỗi theo nghĩa đen, được đặt trước với 'F', chứa các biểu thức bên trong niềng răng.

Đến cuối bài viết này, bạn sẽ tìm hiểu cách thức và lý do bắt đầu sử dụng F-Strings ngay hôm nay.

Nhưng trước tiên, ở đây, cuộc sống như thế nào trước F-String, trở lại khi bạn phải đi bộ đến trường lên dốc cả hai cách trong tuyết.

Chuỗi của trường cũ ở trường học ở Python

Trước Python 3.6, bạn đã có hai cách chính để nhúng các biểu thức python bên trong các chuỗi chữ để định dạng: %-formatting và

>>> "Hello, {}. You are {}.".format(name, age)
'Hello, Eric. You are 74.'
0. Bạn có thể xem cách sử dụng chúng và những hạn chế của chúng là gì.

Tùy chọn số 1: %-Formatting

Đây là OG của định dạng Python và đã có trong ngôn ngữ kể từ khi bắt đầu. Bạn có thể đọc thêm trong các tài liệu Python. Hãy nhớ rằng %-formatting không được khuyến nghị bởi các tài liệu, trong đó có lưu ý sau:

Các hoạt động định dạng được mô tả ở đây thể hiện một loạt các kỳ quặc dẫn đến một số lỗi phổ biến (chẳng hạn như không hiển thị chính xác các bộ dữ liệu và từ điển).

Sử dụng các chuỗi chữ được định dạng mới hơn hoặc giao diện

>>> "Hello, {}. You are {}.".format(name, age)
'Hello, Eric. You are 74.'
0 giúp tránh các lỗi này. Những lựa chọn thay thế này cũng cung cấp các phương pháp tiếp cận mạnh mẽ, linh hoạt và mở rộng hơn để định dạng văn bản. (Nguồn)

Cách sử dụng %-formatting

Các đối tượng chuỗi có hoạt động tích hợp bằng toán tử

>>> "Hello, {}. You are {}.".format(name, age)
'Hello, Eric. You are 74.'
2 mà bạn có thể sử dụng để định dạng chuỗi. Ở đây, những gì trông giống như trong thực tế:

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

>>>

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

Tại sao %-Formatting là tuyệt vời

>>>

>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

Tại sao %-Formatting là tuyệt vời

Các ví dụ mã mà bạn vừa thấy ở trên là đủ có thể đọc được. Tuy nhiên, một khi bạn bắt đầu sử dụng một số tham số và chuỗi dài hơn, mã của bạn sẽ nhanh chóng trở nên dễ đọc hơn nhiều. Mọi thứ đang bắt đầu trông hơi lộn xộn rồi:

Thật không may, loại định dạng này không phải là tuyệt vời bởi vì nó là dài dòng và dẫn đến lỗi, như không hiển thị chính xác các bộ dữ liệu hoặc từ điển. May mắn thay, có những ngày tươi sáng phía trước.

Tùy chọn #2: str.format ()

Cách hoàn thành công việc mới hơn này đã được giới thiệu trong Python 2.6. Bạn có thể kiểm tra hướng dẫn về các kỹ thuật định dạng chuỗi Python mới hơn để biết thêm thông tin.

>>>

>>> "Hello, {}. You are {}.".format(name, age)
'Hello, Eric. You are 74.'

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

>>>

>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

>>>

>>> person = {'name': 'Eric', 'age': 74}
>>> "Hello, {name}. You are {age}.".format(name=person['name'], age=person['age'])
'Hello, Eric. You are 74.'

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

>>>

>>> person = {'name': 'Eric', 'age': 74}
>>> "Hello, {name}. You are {age}.".format(**person)
'Hello, Eric. You are 74.'

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

Tại sao %-Formatting là tuyệt vời

Các ví dụ mã mà bạn vừa thấy ở trên là đủ có thể đọc được. Tuy nhiên, một khi bạn bắt đầu sử dụng một số tham số và chuỗi dài hơn, mã của bạn sẽ nhanh chóng trở nên dễ đọc hơn nhiều. Mọi thứ đang bắt đầu trông hơi lộn xộn rồi:

>>>

>>> first_name = "Eric"
>>> last_name = "Idle"
>>> age = 74
>>> profession = "comedian"
>>> affiliation = "Monty Python"
>>> print(("Hello, {first_name} {last_name}. You are {age}. " + 
>>>        "You are a {profession}. You were a member of {affiliation}.") \
>>>        .format(first_name=first_name, last_name=last_name, age=age, \
>>>                profession=profession, affiliation=affiliation))
'Hello, Eric Idle. You are 74. You are a comedian. You were a member of Monty Python.'

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

Tại sao %-Formatting là tuyệt vời

Các ví dụ mã mà bạn vừa thấy ở trên là đủ có thể đọc được. Tuy nhiên, một khi bạn bắt đầu sử dụng một số tham số và chuỗi dài hơn, mã của bạn sẽ nhanh chóng trở nên dễ đọc hơn nhiều. Mọi thứ đang bắt đầu trông hơi lộn xộn rồi:

Thật không may, loại định dạng này không phải là tuyệt vời bởi vì nó là dài dòng và dẫn đến lỗi, như không hiển thị chính xác các bộ dữ liệu hoặc từ điển. May mắn thay, có những ngày tươi sáng phía trước.

Tùy chọn #2: str.format ()

Cách hoàn thành công việc mới hơn này đã được giới thiệu trong Python 2.6. Bạn có thể kiểm tra hướng dẫn về các kỹ thuật định dạng chuỗi Python mới hơn để biết thêm thông tin.

Cách sử dụng str.format ()

>>>

    age = 18
    message = f"You are {age} years old"
    print(message)
0

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

>>>

    age = 18
    message = f"You are {age} years old"
    print(message)
1

Để chèn nhiều hơn một biến, bạn phải sử dụng một bộ biến số của các biến đó. Đây là cách bạn sẽ làm điều đó:

Tại sao %-Formatting là tuyệt vời

Các ví dụ mã mà bạn vừa thấy ở trên là đủ có thể đọc được. Tuy nhiên, một khi bạn bắt đầu sử dụng một số tham số và chuỗi dài hơn, mã của bạn sẽ nhanh chóng trở nên dễ đọc hơn nhiều. Mọi thứ đang bắt đầu trông hơi lộn xộn rồi:

Thật không may, loại định dạng này không phải là tuyệt vời bởi vì nó là dài dòng và dẫn đến lỗi, như không hiển thị chính xác các bộ dữ liệu hoặc từ điển. May mắn thay, có những ngày tươi sáng phía trước.

Nhưng bạn cũng có thể gọi các chức năng. Đây là một ví dụ:

>>>

    age = 18
    message = f"You are {age} years old"
    print(message)
2

Bạn cũng có tùy chọn gọi trực tiếp một phương thức:

>>>

    age = 18
    message = f"You are {age} years old"
    print(message)
3

    age = 18
    message = f"You are {age} years old"
    print(message)
2

    age = 18
    message = f"You are {age} years old"
    print(message)
4

Bạn cũng có tùy chọn gọi trực tiếp một phương thức:

>>>

    age = 18
    message = f"You are {age} years old"
    print(message)
5

    age = 18
    message = f"You are {age} years old"
    print(message)
2

Bạn cũng có tùy chọn gọi trực tiếp một phương thức:

Bạn thậm chí có thể sử dụng các đối tượng được tạo từ các lớp có chuỗi F. Hãy tưởng tượng bạn đã có lớp học sau:

>>>

    age = 18
    message = f"You are {age} years old"
    print(message)
6

    age = 18
    message = f"You are {age} years old"
    print(message)
2

Bạn cũng có tùy chọn gọi trực tiếp một phương thức:

Bạn thậm chí có thể sử dụng các đối tượng được tạo từ các lớp có chuỗi F. Hãy tưởng tượng bạn đã có lớp học sau:

>>>

    age = 18
    message = f"You are {age} years old"
    print(message)
7

Bạn có thể làm điều này:

>>>

    age = 18
    message = f"You are {age} years old"
    print(message)
8

Các phương pháp

>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
7 và
>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
8 xử lý cách các đối tượng được trình bày dưới dạng chuỗi, do đó, bạn sẽ cần đảm bảo rằng bạn bao gồm ít nhất một trong các phương thức đó trong định nghĩa lớp của bạn. Nếu bạn phải chọn một, hãy đi với
>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
8 vì nó có thể được sử dụng thay cho
>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
7.

Chuỗi được trả về bởi

>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
7 là biểu diễn chuỗi không chính thức của một đối tượng và có thể đọc được. Chuỗi được trả về bởi
>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
8 là đại diện chính thức và nên không rõ ràng. Gọi
>>> person = {'name': 'Eric', 'age': 74}
>>> "Hello, {name}. You are {age}.".format(name=person['name'], age=person['age'])
'Hello, Eric. You are 74.'
3 và
>>> person = {'name': 'Eric', 'age': 74}
>>> "Hello, {name}. You are {age}.".format(name=person['name'], age=person['age'])
'Hello, Eric. You are 74.'
4 tốt hơn là sử dụng trực tiếp
>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
7 và
>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
8.

>>>

    age = 18
    message = f"You are {age} years old"
    print(message)
9

Theo mặc định, các chuỗi F sẽ sử dụng

>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
7, nhưng bạn có thể đảm bảo rằng họ sử dụng
>>> "Hello, {1}. You are {0}.".format(age, name)
'Hello, Eric. You are 74.'
8 nếu bạn bao gồm cờ chuyển đổi
>>> person = {'name': 'Eric', 'age': 74}
>>> "Hello, {name}. You are {age}.".format(name=person['name'], age=person['age'])
'Hello, Eric. You are 74.'
9:

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
0

Nếu bạn muốn đọc một số cuộc trò chuyện dẫn đến các chuỗi F hỗ trợ các biểu thức python đầy đủ, bạn có thể làm như vậy ở đây.

Multiline F-String

Bạn có thể có chuỗi đa dòng:

Nhưng hãy nhớ rằng bạn cần đặt một

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
6 trước mỗi dòng của một chuỗi đa dòng. Mã sau đây đã giành được công việc:

Nếu bạn không đặt một

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
6 trước mỗi dòng riêng lẻ, thì bạn sẽ có các chuỗi thường xuyên, cũ, trong vườn và không sáng bóng, mới, ưa thích.

Nếu bạn muốn lan truyền các chuỗi trên nhiều dòng, bạn cũng có tùy chọn thoát khỏi sự trở lại với

>>> person = {'name': 'Eric', 'age': 74}
>>> "Hello, {name}. You are {age}.".format(**person)
'Hello, Eric. You are 74.'
2:

Nhưng đây là những gì sẽ xảy ra nếu bạn sử dụng

>>> person = {'name': 'Eric', 'age': 74}
>>> "Hello, {name}. You are {age}.".format(**person)
'Hello, Eric. You are 74.'
3:

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
1

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
2

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
3

Đọc về hướng dẫn thụt vào trong PEP 8.

Tốc độ, vận tốc

>>> name = "Eric" >>> age = 74 >>> "Hello, %s. You are %s." % (name, age) 'Hello Eric. You are 74.' 6 trong F-String cũng có thể đứng cho Fast Fast.

Các chuỗi F nhanh hơn cả %-formatting và

>>> "Hello, {}. You are {}.".format(name, age)
'Hello, Eric. You are 74.'
0. Như bạn đã thấy, các chuỗi F là các biểu thức được đánh giá trong thời gian chạy thay vì các giá trị không đổi. Ở đây, một đoạn trích từ các tài liệu:

Các dây F F cung cấp một cách để nhúng các biểu thức bên trong các chữ viết, sử dụng cú pháp tối thiểu. Cần lưu ý rằng một chuỗi F thực sự là một biểu thức được đánh giá tại thời điểm chạy, không phải là một giá trị không đổi. Trong mã nguồn Python, một chuỗi F là một chuỗi theo nghĩa đen, có tiền tố với >>> name = "Eric" >>> age = 74 >>> "Hello, %s. You are %s." % (name, age) 'Hello Eric. You are 74.' 6, chứa các biểu thức bên trong niềng răng. Các biểu thức được thay thế bằng các giá trị của chúng. (Nguồn)

Trong thời gian chạy, biểu thức bên trong niềng răng xoăn được đánh giá trong phạm vi riêng của nó và sau đó đặt cùng với phần theo nghĩa đen của chuỗi F. Chuỗi kết quả sau đó được trả về. Đó là tất cả những gì nó cần.

Ở đây, một so sánh tốc độ:

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
4

Như bạn có thể thấy, F-String xuất hiện trên đầu.

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
5

Tuy nhiên, đó không phải là trường hợp luôn như vậy. Khi chúng được thực hiện lần đầu tiên, họ có một số vấn đề về tốc độ và cần được thực hiện nhanh hơn

>>> "Hello, {}. You are {}.".format(name, age)
'Hello, Eric. You are 74.'
0. Một opcode
>>> person = {'name': 'Eric', 'age': 74}
>>> "Hello, {name}. You are {age}.".format(**person)
'Hello, Eric. You are 74.'
8 đặc biệt đã được giới thiệu.

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
6

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
7

Python F-Strings: Các chi tiết phiền phức

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
8

Bây giờ bạn đã học được tất cả về lý do tại sao F-String lại tuyệt vời, tôi chắc chắn bạn muốn ra khỏi đó và bắt đầu sử dụng chúng. Dưới đây là một vài chi tiết cần ghi nhớ khi bạn mạo hiểm vào thế giới mới dũng cảm này.

Dấu ngoặc kép

Bạn có thể sử dụng các loại dấu ngoặc kép khác nhau bên trong các biểu thức. Chỉ cần đảm bảo rằng bạn không sử dụng cùng một loại dấu ngoặc kép ở bên ngoài chuỗi F như bạn đang sử dụng trong biểu thức.

>>>

>>> name = "Eric"
>>> "Hello, %s." % name
'Hello, Eric.'
9

Mã này sẽ hoạt động:

>>>

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
0

Mã này cũng sẽ hoạt động:

Bạn cũng có thể sử dụng Triple Trích dẫn:

Nếu bạn thấy bạn cần sử dụng cùng một loại dấu ngoặc kép ở cả bên trong và bên ngoài chuỗi, thì bạn có thể thoát với

>>> person = {'name': 'Eric', 'age': 74}
>>> "Hello, {name}. You are {age}.".format(**person)
'Hello, Eric. You are 74.'
2:

>>>

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
1

Từ điển

>>>

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
2

Nói về dấu ngoặc kép, coi chừng khi bạn đang làm việc với từ điển. Nếu bạn định sử dụng các dấu ngoặc kép cho các khóa của từ điển, thì hãy nhớ đảm bảo rằng bạn sử dụng dấu ngoặc kép cho các chuỗi F có chứa các phím.

>>>

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
3

Điều này sẽ hoạt động:

Nhưng đây sẽ là một mớ hỗn độn nóng với lỗi cú pháp:

>>>

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
4

Bạn có thể làm việc xung quanh điều này bằng cách đánh giá biểu thức trước và sử dụng kết quả trong chuỗi F:

>>>

>>> name = "Eric"
>>> age = 74
>>> "Hello, %s. You are %s." % (name, age)
'Hello Eric. You are 74.'
5

Đi ra và định dạng!

Bạn vẫn có thể sử dụng các cách định dạng các chuỗi định dạng cũ hơn, nhưng với các chuỗi F, giờ đây bạn có một cách ngắn gọn, dễ đọc hơn và thuận tiện hơn, vừa nhanh hơn và ít bị lỗi hơn. Đơn giản hóa cuộc sống của bạn bằng cách sử dụng F-Strings là một lý do tuyệt vời để bắt đầu sử dụng Python 3.6 nếu bạn đã thực hiện chuyển đổi. (Nếu bạn vẫn đang sử dụng Python 2, đừng quên rằng năm 2020 sẽ sớm ở đây!)

Theo Zen of Python, khi bạn cần quyết định cách làm một cái gì đó, thì ở đây, ở đây sẽ là một cách và tốt nhất là chỉ có một cách để làm điều đó. Mặc dù các chuỗi F không phải là cách duy nhất có thể để bạn định dạng chuỗi, nhưng chúng ở một vị trí tuyệt vời để trở thành một cách rõ ràng để hoàn thành công việc.

Đọc thêm

Nếu bạn muốn đọc một cuộc thảo luận mở rộng về nội suy chuỗi, hãy xem PEP 502. Ngoài ra, bản nháp PEP 536 có thêm một số suy nghĩ về tương lai của F-String.

Để có thêm niềm vui với chuỗi, hãy xem các bài viết sau:

  • Chuỗi Python định dạng các thực tiễn tốt nhất của Dan Bader
  • Giới thiệu thực tế về việc quét web trong Python của Colin Okeefe

Happy Pythoning!

%F làm gì trong Python?

Các chuỗi F cung cấp một cách để nhúng các biểu thức bên trong các chữ viết, sử dụng cú pháp tối thiểu. Cần lưu ý rằng một chuỗi F thực sự là một biểu thức được đánh giá tại thời điểm chạy, không phải là một giá trị không đổi. Trong mã nguồn Python, một chuỗi F là một chuỗi theo nghĩa đen, được đặt trước với 'F', chứa các biểu thức bên trong niềng răng.provide a way to embed expressions inside string literals, using a minimal syntax. It should be noted that an f-string is really an expression evaluated at run time, not a constant value. In Python source code, an f-string is a literal string, prefixed with 'f', which contains expressions inside braces.

%D %s trong python là gì?

%s được sử dụng làm trình giữ chỗ cho các giá trị chuỗi bạn muốn tiêm vào chuỗi được định dạng.%D được sử dụng làm trình giữ chỗ cho các giá trị số hoặc số thập phân.Ví dụ (đối với Python 3) in (' %s là %d tuổi' %('joe', 42)) sẽ xuất ra Joe 42 tuổi. %d is used as a placeholder for numeric or decimal values. For example (for python 3) print ('%s is %d years old' % ('Joe', 42)) Would output Joe is 42 years old.

%S %d %f là gì?

%s đề cập đến kiểu dữ liệu chuỗi, %F đề cập đến kiểu dữ liệu float và %D đề cập đến một loại dữ liệu kép.Gửi bởi Alexmerryman.Gần 8 năm.. Submitted by AlexMerryman. almost 8 years.

%S trong Python 2 là gì?

Về cơ bản, biểu tượng % được sử dụng với nhiều loại dữ liệu có nhiều loại dữ liệu và cấu hình trong Python.Nói về %s, nó được sử dụng đặc biệt để thực hiện kết nối hai hoặc nhiều chuỗi với nhau trong Python.%S cho phép chúng tôi định dạng hoặc đặt một chuỗi hoặc giá trị số trong một chuỗi đã cho.used to perform concatenation of two or more strings together in Python. The %s allow us to format or place a string or numerical value within a given string.