在 Python 中将布尔值连接到字符串

在 Python 中将布尔值连接到字符串

Concatenate a boolean to a string in Python

要将布尔值连接到字符串:

  1. 使用str()该类将布尔值转换为字符串。
  2. 使用加法 (+) 运算符连接两个字符串。
  3. 结果将是两个值的串联。
主程序
my_str = 'Is subscribed: ' my_bool = False # ✅ convert boolean to string result = my_str + str(my_bool) print(result) # 👉 Is subscribed: False # ------------------------------ # ✅ using formatted string literal result = f'{my_str}{my_bool}' print(result) # 👉️ Is subscribed: False # ------------------------------ # ✅ using str.format() method result = '{}{}'.format(my_str, my_bool) print(result) # 👉️ Is subscribed: False

str类将对象作为参数并返回str对象的版本。

我们使用str该类将布尔值转换为字符串,因为我们不能对字符串和布尔值使用加法运算符。

主程序
my_str = 'Is subscribed: ' my_bool = False # ⛔️ TypeError: can only concatenate str (not "bool") to str result = my_str + my_bool
加法 (+) 运算符左右两侧的值需要是兼容的类型,因此我们必须将布尔值转换为字符串。
主程序
my_str = 'Is subscribed: ' my_bool = False result = my_str + str(my_bool) print(result) # 👉 Is subscribed: False

如果不确定变量存储的类型,请使用内置type()类。

主程序
my_str = 'is subscribed:' print(type(my_str)) # 👉️ <class 'str'> print(isinstance(my_str, str)) # 👉️ True my_bool = True print(type(my_bool)) # 👉️ <class 'bool'> print(isinstance(my_bool, bool)) # 👉️ True

类型类返回对象的类型

如果传入的对象是传入类的实例或子类,则isinstance
函数返回。
True

另一种方法是使用格式化的字符串文字。

使用格式化字符串文字将布尔值连接到字符串

使用格式化字符串文字将布尔值连接到字符串,例如
result = f'{my_str}{my_bool}'. 通过在字符串前加上前缀f,我们可以包含表达式并通过将变量括在大括号中来计算变量。

主程序
my_str = 'Is subscribed: ' my_bool = False result = f'{my_str}{my_bool}' print(result) # 👉️ Is subscribed: False
使用格式化字符串文字时,我们不必显式地将布尔值转换为字符串。转换是自动为我们完成的。

格式化字符串文字 (f-strings) 让我们通过在字符串前加上f.

主程序
my_bool_1 = True my_bool_2 = False result = f'{my_bool_1} is the opposite of {my_bool_2}' print(result) # 👉️ True is the opposite of False

确保将表达式括在大括号 –{expression}中。

或者,您可以使用该str.format()方法。

使用 str.format() 将布尔值连接到字符串

使用该str.format()方法将布尔值连接到字符串,例如
result = '{}{}'.format(my_str, my_bool). str.format()方法使我们能够包含替换字段并执行字符串格式化操作。

主程序
my_str = 'Is subscribed: ' my_bool = True result = '{}{}'.format(my_str, my_bool) print(result) # 👉️ Is subscribed: True

str.format方法
执行字符串格式化操作。

调用该方法的字符串可以包含使用花括号指定的替换字段{}

确保为该format() 方法提供的参数与字符串中的替换字段一样多。

您选择哪种方法是个人喜好的问题。我会使用格式化字符串文字,因为它们不需要转换并允许直接在字符串中插入表达式。

发表评论