[5 min python] 內建函數 - str()

更新 發佈閱讀 4 分鐘

Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。

str():字串轉換

語法:

str(物件)
str(bytes物件, encoding='utf-8', errors='strict')

把任何物件轉成字串。幾乎所有東西都能轉:

print(str(123))        # '123'
print(str(3.14))       # '3.14'
print(str(True))       # 'True'
print(str(None))       # 'None'
print(str([1, 2, 3]))  # '[1, 2, 3]'

不帶參數時,回傳空字串:

print(str())    # ''(空字串)
print(len(str()))  # 0

也可以把 bytes 轉成字串,指定編碼方式:

b = b'hello'
print(str(b, encoding='utf-8'))  # 'hello'

# 中文 bytes
b2 = '你好'.encode('utf-8')
print(str(b2, encoding='utf-8'))  # '你好'

字串拼接很常見,str() 在這時候很好用:

age = 25
# print("我今年" + age + "歲")  # TypeError!
print("我今年" + str(age) + "歲")  # 我今年25歲

# 當然也可以用 f-string(會自動呼叫 str())
print(f"我今年{age}歲")  # 我今年25歲

自訂類別可以定義 __str__() 來控制轉換結果:

class Dog:
    def __init__(self, name):
        self.name = name
    def __str__(self):
        return f"小狗:{self.name}"

dog = Dog("阿柴")
print(str(dog))  # 小狗:阿柴
print(dog)       # 小狗:阿柴(print 會自動呼叫 str())

小小綜合例子

# 建立一份簡單的商品清單
items = [
    {"name": "蘋果", "price": 35, "qty": 3},
    {"name": "牛奶", "price": 65, "qty": 1},
    {"name": "麵包", "price": 40, "qty": 2},
]

print("=" * 30)
print("購物清單")
print("=" * 30)

total = 0
for item in items:
    subtotal = item["price"] * item["qty"]
    total += subtotal
    line = (
        item["name"] + " x" + str(item["qty"])
        + " = $" + str(subtotal)
    )
    print(line)

print("-" * 30)
print("總計:$" + str(total))
留言
avatar-img
艾利斯幻想旅程
5會員
412內容數
網路世界是一個充滿多元性與無限可能的空間,人們可以在此分享資訊、交流思想,並展現無盡的創造力。然而,隨著社交媒體和線上論壇的普及,一種有趣且獨特的現象也隨之興起——廢文。廢文指的是那些內容看似無聊、無害,或表面上毫無意義的帖子、留言或圖片,通常目的在於娛樂或逗趣,而非提供實質價值的資訊。
艾利斯幻想旅程的其他內容
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 complex():複數 語法: complex(real, imag) complex(字串) 建立一個複數(有實部
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 complex():複數 語法: complex(real, imag) complex(字串) 建立一個複數(有實部
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 float():浮點數轉換 語法: float(x) 把值轉換成浮點數(小數)。可以接受整數、字串,甚至特殊值: p
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 float():浮點數轉換 語法: float(x) 把值轉換成浮點數(小數)。可以接受整數、字串,甚至特殊值: p
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 bool():布林值轉換 語法: bool(x) 把任何值轉換成 True 或 False。在 Python 裡,幾乎
2026/02/21
Python「內建函數」(built-in functions)就是不用 import,隨時可以直接呼叫的函數,像 print()、len()、range() 這些,都算。 bool():布林值轉換 語法: bool(x) 把任何值轉換成 True 或 False。在 Python 裡,幾乎
看更多