个性化阅读
专注于IT技术分析

Python中的f字符串格式

本文概述

话题

  1. 介绍

1.1。语法

2.显示变量

3.表达式

4.特殊字符

4.1。报价单

4.2。大括号

5.字典

1.简介

什么是字符串格式?

字符串格式化使用特定编程语言提供的格式化技术来吸引人地设计你的字符串。我们在Python中使用了不同的字符串格式化技术。现在, 我们将探索新的f字符串格式化技术。

f字符串在程序运行时求值。与以前的方法相比, 它很快。

与Python以前的字符串格式化技术相比, f-string具有简单的语法。我们将使用不同的示例探索这种格式的每一点。

1.1。语法

每个f字符串语句均由两部分组成, 一个是字符f或F, 下一个是我们要格式化的字符串。该字符串将用单引号, 双引号或三引号引起来。

让我们看一下语法。

## we can also use F, '', ''''', """"""'
f"string"

代替字符串, 我们必须放置要格式化的句子。

2.显示变量

我们以前主要使用str.format()方法来格式化字符串。但是, 时间已经改变, 我们有了一种新的方法来使我们的工作速度提高一倍。

大括号{}中的变量在输出中显示为普通打印语句。让我们来看一个例子。

## declaring variables
name = "srcmini"
type_of_company = "Educational"

## enclose your variable within the {} to display it's value in the output
print(f"{name} is an {type_of_company} company.")
srcmini is an Educational company.

我们已经在输出中获得了变量的值。看, 很容易。我们也可以将F替换为F。

## declaring variables
name = "srcmini"
type_of_company = "Educational"

## enclose your variable within the {} to display it's value in the output
print(F"{name} is an {type_of_company} company.")
srcmini is an Educational company.

f较低或较高, 其作用相同。

3.表达式

如果我们可以在字符串中计算表达式, 例如算术, 函数调用等, 该怎么办?太酷了!是的在字符串中使用表达式非常非常令人兴奋。 f-string允许我们评估字符串内的表达式。

只需将表达式放在{}内即可求值。 f字符串在程序运行时对其进行评估。这是一项出色的功能, 可以节省你的时间和代码。

让我们看一下不同类型的表达式的示例。

## arithmetic expression
print(f"{5 * 5}")
25

我们也可以在{}内调用函数。让我们定义一个函数greet()并在f字符串中调用它

def greet(name):
    return "Hello, " + name
## calling the function using f-string
name = "srcmini"
print(f"{greet(name)}")
Hello, srcmini

同样, 我们也可以调用预定义方法。让我们来看看。

## calling the 'title' method which makes the first letter of every word upper
string = "srcmini is an educational company."
print(f"{string.title()}")
srcmini Is An Educational Company.

f弦还能做什么?我们可以显示对象吗?我们可以。与我们显示变量的输出时相同。

class Sample:

    def __init__(self, name, age):
        self.name = name
        self.age = age

    ## this method will be called when we print the object
    def __str__(self):
        return f'{self.name} is {self.age} years old.'
john = Sample("John", 19)

## it'll wake up the __str__() method
print(f"{john}")
John is 19 years old.

4.特殊字符

如果我们要显示Python内部使用的特殊字符(如{}, \’, \”?)怎么办?我们可以在f字符串中使用转义字符吗?让我们看看这些问题的答案。

4.1。报价单

我们可以在f字符串中使用任何引号{单, 双或三}。我们必须使用转义符来打印引号。 f字符串表达式不允许我们使用反斜杠。我们必须将其放置在{}之外。

让我们通过示例来看一下。

name = "srcmini"

## displaying single quotations
print(f"Hello, \'{name}\'")

print()

## displaying double quotations
print(f"Hello, \"{name}\"")
Hello, 'srcmini'

Hello, "srcmini"

让我们看看f字符串中其他类型的引号。

f'{"Hello, srcmini"}'
'Hello, srcmini'
f"{'Hello, srcmini'}"
'Hello, srcmini'
f"""Hello, srcmini"""
'Hello, srcmini'
f'''Hello, srcmini'''
'Hello, srcmini'

我们也可以在三个引号中包含{}。

你不能在f字符串的{}内使用反斜杠。如果它们包含在{}中, 则会出现错误。

print(f"{\"srcmini\"}")
  File "<ipython-input-60-b9a2502d6274>", line 1
    print(f"{\"srcmini\"}")
         ^
SyntaxError: f-string expression part cannot include a backslash

4.2。大括号

我们必须使用一组大括号来使用f字符串打印大括号。让我们来看一个例子。

print(f"{{srcmini}}")
{srcmini}

如果要使用f字符串显示两组大括号, 则必须使用四组大括号。

print(f"{{{{srcmini}}}}")
{{srcmini}}

5.字典

在处理f字符串中的字典键时, 我们必须谨慎一些。你必须对字典键和f字符串使用不同的引号。不允许对字典键使用相同的引号, 就像它是f字符串一样。

person = {"name": "John", "age": 19}
print(f"{person['name']} is {person['age']} years old.")
John is 19 years old.

对于字典, 你不能按以下方式使用它。

person = {"name": "John", "age": 19}
print(f'{person['name']} is {person['age']} years old.')
  File "<ipython-input-65-6849ff0810ae>", line 2
    print(f'{person['name']} is {person['age']} years old.')
                        ^
SyntaxError: invalid syntax

总结

我希望你通过阅读本教程来学习Python的新知识。要了解有关字符串和以前的格式化技术的更多信息, 请参阅srcmini上的本教程。另外, 请查看Python中srcmini的正则表达式课程。

快乐编码:)

赞(0)
未经允许不得转载:srcmini » Python中的f字符串格式

评论 抢沙发

评论前必须登录!