Tôi muốn khởi tạo một danh sách trong python. Tôi không hiểu tại sao đoạn code dưới đây không làm việc:khởi tạo các thành viên của một danh sách
u = ['abc', 'de', 'fghi', 'jklm', 'n', '']
for item in u:
item = len(item)
Có nhiều cách khác để khởi tạo danh sách, như:
u = [len(item) for item in u]
Nhưng, câu hỏi của tôi là tại sao đoạn code đầu tiên không hoạt động.
Chỉnh sửa: Tôi là người mới sử dụng Python và lập trình. Rất tiếc, tôi không hiểu một số phần của câu trả lời của bạn. Ví dụ:
- rebinding trong "rebinding tên item
với độ dài của tên item
"
- iterator trong "mục" là một biến tạm thời trỏ đến một phần tử của một u
dựa vào nơi (implicit) iterator trỏ
theo như tôi hiểu, ví dụ thứ hai của tôi, tạo ra một new_list
trong bộ nhớ, và gán các giá trị của new_list
-u
. Không có vấn đề gì các giá trị trước đó. Nhưng tôi muốn biết làm thế nào tôi có thể thay đổi các giá trị, trong danh sách đầu tiên. Cảm ơn
mục là một chuỗi trong trường hợp đầu tiên, vì các phần tử của danh sách là chuỗi. Người ta có thể gọi len() trên dây. –
Đúng, tôi đã sửa câu trả lời của mình. –