如果一個字串表示一個列表,你可以使用 Python 的 ast.literal_eval
方法將其轉換為真正的列表。ast.literal_eval
是一個安全的方法,可以將字串形式的表示式解析為 Python 物件。
這裡是一個例子:
import ast
# 字串形式的列表
str_list = "[1, 2, 3, 4, 5]"
# 將字串解析為真正的列表
actual_list = ast.literal_eval(str_list)
print(actual_list) # 輸出: [1, 2, 3, 4, 5]
print(type(actual_list)) # 輸出: <class 'list'>
ast.literal_eval
方法會將字串解析為 Python 字面量型別(如列表、字典、元組等),同時避免了使用 eval
帶來的安全風險。
如果字串包含了更復雜的資料結構,比如巢狀的列表或字典,ast.literal_eval
也能正確地解析。
例如:
str_list = "[[1, 2], [3, 4], [5, 6]]"
actual_list = ast.literal_eval(str_list)
print(actual_list) # 輸出: [[1, 2], [3, 4], [5, 6]]