Python Lists là gì? (phần 2)

Python Lists là gì? (tiếp tục)

Chúng ta có thể tạo biến tham chiếu đến list, chính như chúng ta tạo chúng tham chiếu
đến string, số nguyên và float. Hãy tạo 2 biến tham chiếu đến các lists và sau đó nối
chúng lại để sinh ra list mới.

>>> lst1 = [1, 2, 3]
>>> lst2 = [4, 5, 6]
>>> lst1 + lst2
[1, 2, 3, 4, 5, 6]

Trong khi chúng ta hiển thị list được nối, chúng ta đã không lưu giữ nó, như chúng ta có
thể thấy bằng cách nhìn vào list lần nữa:

>>> lst1
[1, 2, 3]
>>> lst2
[4, 5, 6]

Để tạo một biến tham chiếu đến list được nối, chúng ta sử dụng phép gán:

>>> lst3 = lst1 + lst2
>>> lst3
[1, 2, 3, 4, 5, 6]

Các tên như lst, lst1, và lst2 có thể được sử dụng khi không cần cụ thể hơn về một list chứa
cái gì.
Nhưng không dùng list bản thân nó như tên biến. Nó đã là một tên cái chúng ta có thể sử dụng
chuyển một chuỗi thành một list:

>>> list(‘abcde’)
[‘a’, ‘b’, ‘c’, ‘d’, ‘e’]

Nếu bạn tạo một biến tên list, bạn sẽ mất hoạt động có giá trị này, và bạn sẽ làm nhầm lẫn người
đọc người mong đợi list không bị nhét vào.
Cuối cùng, các lists hỗ trợ chỉ mục hoá và slicing. Chỉ mục hoá trả về một giá trị đơn, và slicing
trả về một list các giá trị:

>>> lst = [50, 30, 81, 40]
>>> lst[1]
30
>>> lst[-2]
81
>>> lst[1:3]
[30, 81]

Nếu chúng ta có một list các strings, chúng ta có thể truy cập một trong những kí tự string của nó
bằng cách chỉ mục hoá hai lần, đầu tiên chọn 1 string và sau đó chọn một kí tự:

>>> lst = [‘one’, ‘two’, ‘hello’]
>>> lst[2]
‘hello’
>>> lst[2][1]
‘e’

Concept check

Code sau lưu cái gì vào biến total?
lst = [a list of numbers]
total = 0
i = 1
while i <= len(lst):
total = total + i
i = i + 1
A. The sum of the list
B. The sum of the list, not including its first value
C. The sum of the list, not including its first and last values
D. This code causes an error because it accesses an invalid index of the list
E. None of the above
Trả lời: E. Code này thêm các số 1, 2, 3..vv., tuỳ thuộc vào độ dài của list. Nó không
thêm các số từ list hay chỉ mục hoá list.

Chia sẻ

Leave a Reply

Your email address will not be published. Required fields are marked *