Функция str() в Python

Python3 内置函数Встроенные функции Python3


str()Это одна из наиболее часто используемых встроенных функций в Python, используемая для преобразования других типов данных в строковый тип.

Строка — один из наиболее часто используемых типов данных в Python,str()Функция помогает нам преобразовывать числа, списки, кортежи и т. д. в строки, что удобно для вывода и конкатенации.

Значение слова: strДаstringСокращение от (строки).


Базовый синтаксис и параметры

str()Это встроенная функция, которую можно вызывать напрямую.

Формат синтаксиса

str(object)
str(object, encoding)
str(object, errors)

Описание параметра

  • Параметр object:
    • Тип: любой объект
    • Описание: Объект, который нужно преобразовать в строку.
  • Параметр encoding(необязательный):
    • Тип: String
    • Описание: Формат кодировки (например, 'utf-8', 'gbk').
  • Параметр errors(необязательный):
    • Тип: String
    • Описание: Метод обработки ошибок, по умолчанию 'strict' (вызывает исключение). Другие варианты: 'ignore', 'replace'.

Описание функций

  • Возвращаемое значение: Возвращает строковый объект.
  • Поведение по умолчанию: Возвращает пустую строку при вызове без параметров.""。

Примеры

Давайте освоим на примерахstr()использование.

Пример 1: Базовое использование — преобразование различных типов

Пример

# Преобразование целого числа в строку
print(str(123))           # Вывод: 123
print(type(str(123)))     # Вывод: <class 'str'>

# Преобразование числа с плавающей запятой в строку
print(str(3.14159))       # Вывод: 3.14159

# Преобразовать логическое значение в строку
print(str(True))          # Вывод: True
print(str(False))         # Вывод: False

# Преобразовать список в строку
print(str([1, 2, 3]))     # Вывод: [1, 2, 3]

# Преобразовать кортеж в строку
print(str((1, 2, 3)))     # Вывод: (1, 2, 3)

# Преобразовать словарь в строку
print(str({"name": "Tom", "age": 20}))  # Вывод: {'name': 'Tom', 'age': 20}

# Без аргумента
print(str())              # Вывод: (пустая строка)

Ожидаемый вывод:

123
<class 'str'>
3.14159
True
False
[1, 2, 3]
(1, 2, 3)
{'name': 'Tom', 'age': 20}

Пояснение кода:

  1. Когда числа преобразуются в строки, их исходное числовое представление сохраняется.
  2. Когда логические значения преобразуются в строки, первая буква делается заглавной.
  3. Контейнерные типы, такие как списки, кортежи и словари, преобразуются в свои строковые представления.

Пример 2: Конкатенация строк

Пример

name = "Tom"
age = 20
height = 1.75

# Конкатенация после преобразования с помощью str()
info = name + " " + str(age) + " years old " + str(height) + " meters"
print(info)  # Вывод: Tom 20 years old 1.75 meters

# Использование f-строки (рекомендуется)
info = f"{name} {age} years old {height} meters"
print(info)  # Вывод: Tom 20 years old 1.75 meters

# Форматированный вывод
print("Name: " + str(name))  # Вывод: Name: Tom

Ожидаемый вывод:

Tom 20岁 1.75米
Tom 20岁 1.75米
姓名: Tom

Пояснение кода:

  • str()После преобразования можно использовать знак плюс для конкатенации строк.
  • Современный Python рекомендует использовать f-string для форматирования строк — это более кратко и удобочитаемо.

Пример 3: Обработка байтов и кодировки

Пример

# Преобразовать байты в строку (необходимо указать кодировку)
data = b"Hello"
s = str(data, encoding='utf-8')
print(s)  # Вывод: Hello

# Обработка ошибок кодировки
data = b"Hello\x80"
s = str(data, encoding='utf-8', errors='ignore')
print(s)  # Вывод: Hello (недопустимые байты игнорируются)

s = str(data, encoding='utf-8', errors='replace')
print(s)  # Вывод: Hello (заменён на символ замены)

Ожидаемый вывод:

Hello
Hello
Hello

Этот пример демонстрируетstr()использование при работе с байтами и кодировкой.


Python3 内置函数Встроенные функции Python3


Другие расширения