Tôi có một chuỗi trông như thế này:
arr = "[[[234],[432], ..., [523]]]"
Tôi muốn trích xuất mảng trong chuỗi này để nó trở thành:
arr = [[[234], [432], ..., [523]]]
Làm thế nào để tôi làm điều này?
Cristifati
34.5K9 Huy hiệu vàng48 Huy hiệu bạc77 Huy hiệu đồng9 gold badges48 silver badges77 bronze badges
Đã hỏi ngày 3 tháng 4 năm 2020 lúc 20:20Apr 3, 2020 at 20:20
2
Tránh xa những nguy hiểm của Eval, bạn có thể sử dụng LITERAL_EVAL
ast.literal_eval["[[[234],[432],[523]]]"] #[[[234], [432], [523]]]
Đã trả lời ngày 3 tháng 4 năm 2020 lúc 20:25Apr 3, 2020 at 20:25
mad_mad_mad_
7.9422 Huy hiệu vàng23 Huy hiệu bạc37 Huy hiệu đồng2 gold badges23 silver badges37 bronze badges
Sử dụng eval []:
arr = "[[[234],[432], [523]]]"
arr = eval[arr]
Đã trả lời ngày 3 tháng 4 năm 2020 lúc 20:24Apr 3, 2020 at 20:24
Ihavenoideaihavenoideaihavenoidea
6191 Huy hiệu vàng10 Huy hiệu bạc21 Huy hiệu đồng1 gold badge10 silver badges21 bronze badges
Hãy thử chức năng
arr = [[[234], [432], ..., [523]]]
2 của Python.>>> arr=eval["[[[234],[432],[523]]]"]
>>> arr
[[[234], [432], [523]]]
Đã trả lời ngày 3 tháng 4 năm 2020 lúc 20:25Apr 3, 2020 at 20:25
Python không có kiểu dữ liệu mảng sẵn có; Thay vào đó, bạn có thể chuyển đổi chuỗi Python thành Liệt kê. Do đó, bạn có thể coi một danh sách Python là một mảng trong ví dụ này.
Để chuyển đổi chuỗi thành mảng trong python, hãy sử dụng phương thức chuỗi.split []. Phương thức chuỗi .Split [] chia chuỗi từ dấu phân cách và trả về các phần tử chia làm mục danh sách riêng lẻ. Phương thức phân chia chuỗi python chia chuỗi thành một danh sách. Bạn có thể chỉ định phân tách; Bộ phân cách mặc định là bất kỳ khoảng trắng nào..split[] method. The String .split[] method splits the String from the delimiter and returns the splitter elements as individual list items. Python String split[] method splits the string into a list. You can specify the separator; the default separator is any whitespace.
Cú pháp
string.split[separator, maxsplit]
Thông số
Cả hai tham số là tùy chọn.
Nó lấy một dấu phân cách làm tham số tùy chọn được sử dụng để phân chia chuỗi. Theo mặc định, khoảng trắng là một dấu phân cách.
Tham số MAXSplit chỉ định số lượng việc chia tách. Giá trị mặc định là -1, đó là tất cả các lần xuất hiện.maxsplit parameter specifies how many splits to do. The default value is -1, which is “all occurrences“.
Thí dụ
# app.py str = "Millie Bobby Brown is Enola Holmes" arr = str.split[] print[arr]
Đầu ra
['Millie', 'Bobby', 'Brown', 'is', 'Enola', 'Holmes']
Trong ví dụ này, chúng tôi đã không cung cấp rõ ràng bộ phân cách, vì vậy nó lấy khoảng trắng làm dấu phân cách và chia chuỗi dựa trên dấu phân cách đó và trả về danh sách.
Để phân chia chuỗi ở một ký tự cụ thể, hãy sử dụng hàm Python Split [].
# app.py str = "Millie,Bobby,Brown,is,Enola,Holmes" arr = str.split[','] print[arr]
Đầu ra
['Millie', 'Bobby', 'Brown', 'is', 'Enola', 'Holmes']
Trong ví dụ này, chúng tôi đã không cung cấp rõ ràng bộ phân cách, vì vậy nó lấy khoảng trắng làm dấu phân cách và chia chuỗi dựa trên dấu phân cách đó và trả về danh sách.‘,’ separator.
Để phân chia chuỗi ở một ký tự cụ thể, hãy sử dụng hàm Python Split [].
Trong ví dụ này, chúng tôi phân chia chuỗi ở dấu phân cách ‘,.
arr = [[[234], [432], ..., [523]]]
0Đầu ra
arr = [[[234], [432], ..., [523]]]
1Trong ví dụ này, chúng tôi đã không cung cấp rõ ràng bộ phân cách, vì vậy nó lấy khoảng trắng làm dấu phân cách và chia chuỗi dựa trên dấu phân cách đó và trả về danh sách.