Khả năng hiểu danh sách được sử dụng để thực hiện một số thao tác cho mọi phần tử hoặc chọn một tập hợp con các phần tử đáp ứng một điều kiện
Trong ví dụ, chúng ta gọi lớp
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
37 với từng mục trong danh sách và trả về kết quảLớp int trả về một đối tượng số nguyên được xây dựng từ đối số chuỗi hoặc số được cung cấp
Ngoài ra, bạn có thể sử dụng hàm
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
38Để chuyển đổi danh sách chuỗi thành danh sách số nguyên
- Truyền lớp
37 và danh sách cho hàml = [1, 2, 3] res = [int[item] for item in l] print[l] print[type[l]]
38l = [1, 2, 3] res = [int[item] for item in l] print[l] print[type[l]]
- Hàm
38 sẽ chuyển từng mục của danh sách tới lớpl = [1, 2, 3] res = [int[item] for item in l] print[l] print[type[l]]
37l = [1, 2, 3] res = [int[item] for item in l] print[l] print[type[l]]
- Danh sách mới sẽ chỉ chứa các giá trị số nguyên
Hàm map[] lấy một hàm và một iterable làm đối số và gọi hàm với mỗi mục của iterable
Cách tiếp cận này tiềm ẩn hơn một chút so với việc sử dụng cách hiểu danh sách
Lưu ý rằng chúng tôi đã chuyển đối tượng
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
43 sang lớp l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
44 để chuyển đổi nó thành một danh sáchNếu bạn muốn chuyển đổi các mục của danh sách tại chỗ thay vì tạo danh sách mới với số nguyên, hãy sử dụng vòng lặp
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
45Hàm liệt kê nhận một đối tượng có thể lặp lại và trả về một đối tượng liệt kê chứa các bộ trong đó phần tử đầu tiên là chỉ mục và phần tử thứ hai là mục
Sử dụng hàm int[] để Convert list thành int trong Python. Phương thức này với khả năng hiểu danh sách trả về một giá trị số nguyên kết hợp tất cả các phần tử của danh sách
Ví dụ chuyển đổi danh sách thành int Python
Mã ví dụ đơn giản chuyển đổi [1, 2, 3] thành một số nguyên trong 123. Sử dụng khả năng hiểu danh sách để tạo danh sách mới với
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
46 được áp dụng cho tất cả các phần tửl = [1, 2, 3]
s = [str[integer] for integer in l]
a_string = "".join[s]
res = int[a_string]
print[res]
print[type[res]]
đầu ra
Cách chuyển đổi tất cả các phần tử của danh sách thành int trong Python
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
Hãy bình luận nếu bạn có bất kỳ nghi ngờ và đề xuất nào về danh sách Python này cho chương trình int
Ghi chú. IDE. PyCharm 2021. 3. 3 [Phiên bản cộng đồng]
cửa sổ 10
Trăn 3. 10. 1
Tất cả các Ví dụ về Python đều nằm trong Python 3, vì vậy có thể nó khác với python 2 hoặc các phiên bản nâng cấp
Rohit
Bằng cấp về Khoa học Máy tính và Kỹ sư. Nhà phát triển ứng dụng và có kinh nghiệm về nhiều ngôn ngữ lập trình. Đam mê công nghệ & thích học hỏi kỹ thuật
Hầu hết các chương trình không chỉ hoạt động với các biến. Họ cũng sử dụng danh sách các biến. Ví dụ, một chương trình có thể xử lý thông tin về sinh viên trong lớp bằng cách đọc danh sách sinh viên từ bàn phím hoặc từ tệp. Việc thay đổi số lượng học sinh trong lớp không được yêu cầu sửa đổi mã nguồn chương trình
Trước đây chúng ta đã phải đối mặt với nhiệm vụ xử lý các phần tử của một dãy — ví dụ, khi tính toán phần tử lớn nhất của dãy. Nhưng chúng tôi đã không giữ toàn bộ trình tự trong bộ nhớ của máy tính. Tuy nhiên, trong nhiều bài toán, cần phải giữ nguyên cả dãy, chẳng hạn như khi ta phải in ra tất cả các phần tử của dãy theo thứ tự tăng dần ["sắp xếp dãy"]
Để lưu trữ dữ liệu đó, trong Python, bạn có thể sử dụng cấu trúc dữ liệu có tên là danh sách [trong hầu hết các ngôn ngữ lập trình, thuật ngữ khác được sử dụng - “mảng”]. Danh sách là dãy các phần tử được đánh số từ 0, giống như các ký tự trong xâu. Danh sách có thể được đặt thủ công bằng cách liệt kê các phần tử trong danh sách trong ngoặc vuông, như ở đây
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']
Danh sách
5 1809 1854 1860 1891 19257 có 6 phần tử, cụ thể là.
5 1809 1854 1860 1891 19258,
5 1809 1854 1860 1891 19259,
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]0,
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]1,
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]2,
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]3. Danh sách
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]4 có 7 phần tử, mỗi phần tử là xâu
Giống như các ký tự trong chuỗi, các phần tử danh sách cũng có thể có chỉ số âm, ví dụ:
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]5,
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]6. Chỉ mục phủ định có nghĩa là chúng ta bắt đầu từ phần tử cuối cùng và đi sang trái khi đọc danh sách
Bạn có thể lấy số lượng phần tử trong danh sách bằng hàm
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]7 [có nghĩa là độ dài của danh sách], e. g.
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]8
Không giống như chuỗi, các phần tử của danh sách có thể thay đổi được;
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
5l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
6Xem xét một số cách tạo và đọc danh sách. Trước hết, bạn có thể tạo một danh sách trống [danh sách không có mục nào, độ dài của nó bằng 0] và bạn có thể thêm các mục vào cuối danh sách của mình bằng cách sử dụng
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]9. Ví dụ: giả sử chương trình nhận được số lượng phần tử trong danh sách
5 1809 1854 1860 1891 19250, sau đó lần lượt
5 1809 1854 1860 1891 19250 phần tử của danh sách tại một dòng riêng biệt. Dưới đây là một ví dụ về dữ liệu đầu vào ở định dạng này
5 1809 1854 1860 1891 1925Trong trường hợp này, bạn có thể tổ chức đọc từ danh sách đó như sau
5 1809 1854 1860 1891 1925
a = [] # start an empty list n = int[input[]] # read number of element in the list for i in range[n]: new_element = int[input[]] # read next element a.append[new_element] # add it to the list # the last two lines could be replaced by one: # a.append[int[input[]]] print[a]
Trong ví dụ minh họa, danh sách trống được tạo, sau đó số lượng phần tử được đọc, sau đó bạn đọc danh sách các mục theo từng dòng và nối vào cuối. Điều tương tự có thể được thực hiện, lưu biến
5 1809 1854 1860 1891 19250
5 1809 1854 1860 1891 1925
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']5
Có một số hoạt động được xác định cho danh sách. nối danh sách [thêm danh sách, i. e. "dán" danh sách này sang danh sách khác] và lặp lại [nhân danh sách với một số]. Ví dụ
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
5Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']7
Danh sách kết quả
5 1809 1854 1860 1891 19253 sẽ bằng
5 1809 1854 1860 1891 19254 và danh sách
5 1809 1854 1860 1891 19255 sẽ bằng
5 1809 1854 1860 1891 19256. Điều này cho phép bạn tổ chức quá trình đọc danh sách khác nhau. trước tiên, hãy xem xét kích thước của danh sách và tạo danh sách từ số lượng phần tử mong muốn, sau đó lặp qua biến
5 1809 1854 1860 1891 19257 bắt đầu bằng số 0 và bên trong vòng lặp đọc phần tử thứ 37 của danh sách
5 1809 1854 1860 1891 1925
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
51Bạn có thể in các phần tử của danh sách
5 1809 1854 1860 1891 19259 với
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']50; . Nói chung, điều này là bất tiện; . Dưới đây là hai ví dụ về điều đó, sử dụng các dạng vòng lặp khác
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
5____153Tại đây chỉ số
5 1809 1854 1860 1891 19257 được thay đổi, khi đó phần tử
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']52 được hiển thị
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
5l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
55Trong ví dụ này, các mục danh sách được hiển thị trên một dòng được phân tách bằng dấu cách và không phải chỉ mục bị thay đổi mà thay vào đó là giá trị của chính biến đó [ví dụ: trong vòng lặp
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']53, biến
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']54 sẽ nhận các giá trị
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']55,
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']56,
Đặc biệt chú ý đến ví dụ cuối cùng. Một phần rất quan trọng của hệ tư tưởng Python là vòng lặp
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']58, cung cấp cách thuận tiện để lặp qua tất cả các phần tử của một chuỗi nào đó. Đây là điểm Python khác với Pascal, nơi bạn phải lặp lại các chỉ mục của phần tử, nhưng không phải trên chính các phần tử
Chuỗi trong Python là chuỗi, danh sách, giá trị của hàm
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']59 [đây không phải là danh sách] và một số đối tượng khác
Đây là một ví dụ cho thấy việc sử dụng vòng lặp
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']58 khi bạn cần trích xuất tất cả các chữ số từ một chuỗi và tạo danh sách số của chúng
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
5l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
57Quảng cáo của Google, có thể dựa trên sở thích của bạn
Các mục danh sách có thể được đưa ra trong một dòng được phân tách bằng một ký tự; . Sau đó, bạn có thể sử dụng phương thức chuỗi
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
52, phương thức này trả về danh sách các chuỗi có được sau khi cắt chuỗi ban đầu bằng dấu cách. Ví dụl = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
58l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
59Nếu bạn chạy chương trình này với dữ liệu đầu vào là
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
53 thì danh sách 5 1809 1854 1860 1891 19259 sẽ bằng
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
55. Xin lưu ý rằng danh sách sẽ bao gồm các chuỗi, không phải số. Nếu bạn muốn lấy danh sách các số, bạn phải chuyển đổi từng mục danh sách thành số nguyênl = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
58l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
61Sử dụng phép thuật đặc biệt của Python - trình tạo - điều tương tự có thể được thực hiện trong một dòng
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
58l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
63[Chúng tôi sẽ giải thích mã này hoạt động như thế nào trong phần tiếp theo. ] Nếu bạn muốn đọc một danh sách các số thực, bạn phải thay đổi kiểu
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
56 thành l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
57Phương thức
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
52 có một tham số tùy chọn xác định chuỗi nào sẽ được sử dụng làm dấu phân cách giữa các mục danh sách. Ví dụ: gọi phương thức l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
59 trả về danh sách thu được bằng cách tách chuỗi ban đầu khi gặp ký tự Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']70
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
5l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
65Trong Python, bạn có thể hiển thị danh sách các chuỗi bằng lệnh một dòng. Đối với điều đó, phương pháp
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']71 được sử dụng; . một danh sách các chuỗi. Nó trả về chuỗi thu được bằng cách nối các phần tử đã cho và dấu phân cách được chèn vào giữa các phần tử của danh sách; . Chúng tôi biết rằng bạn đã không hiểu câu trước ngay từ lần đầu tiên. . ] Nhìn vào các ví dụ
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
5l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
67Nếu một danh sách bao gồm các số, bạn phải sử dụng ma thuật đen tối của trình tạo. Đây là cách bạn có thể in ra các thành phần của danh sách, được phân tách bằng dấu cách
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
5l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
69Tuy nhiên, nếu bạn không phải là người yêu thích ma thuật hắc ám, bạn có thể đạt được hiệu ứng tương tự bằng cách sử dụng vòng lặp
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']58
Quảng cáo của Google, có thể dựa trên sở thích của bạn
Để tạo một danh sách chứa đầy các mục giống hệt nhau, bạn có thể sử dụng tính năng lặp lại danh sách, chẳng hạn
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
55 1809 1854 1860 1891 19251
Để tạo danh sách phức tạp hơn, bạn có thể sử dụng trình tạo. các biểu thức cho phép điền vào một danh sách theo một công thức. Hình thức chung của một máy phát điện như sau
5 1809 1854 1860 1891 19252
trong đó
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']73 là ID của một số biến,
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']74 là một chuỗi giá trị, lấy biến [đây có thể là một danh sách, một chuỗi hoặc một đối tượng thu được bằng cách sử dụng hàm
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']75],
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']76 — một số biểu thức, thường tùy thuộc vào biến . Các phần tử danh sách sẽ được điền theo biểu thức này
Dưới đây là một số ví dụ về những người sử dụng máy phát điện
Đây là cách bạn tạo danh sách
5 1809 1854 1860 1891 19250 số 0 bằng trình tạo
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
55 1809 1854 1860 1891 19254
Đây là cách bạn tạo một danh sách chứa đầy các số nguyên bình phương
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
55 1809 1854 1860 1891 19256
Nếu bạn cần điền vào danh sách các ô vuông có số từ 1 đến
5 1809 1854 1860 1891 19250, bạn có thể thay đổi cài đặt của
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']75 thành
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
500l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
55 1809 1854 1860 1891 19258
Đây là cách bạn có thể nhận được một danh sách chứa đầy các số ngẫu nhiên từ 1 đến 9 [sử dụng
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
501 từ mô-đun l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
502]l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
55 1809 1854 1860 1891 19250
Và trong ví dụ này, danh sách sẽ bao gồm các dòng được đọc từ đầu vào tiêu chuẩn. đầu tiên, bạn cần nhập số phần tử của danh sách [giá trị này sẽ được sử dụng làm đối số của hàm
Primes = [2, 3, 5, 7, 11, 13] Rainbow = ['Red', 'Orange', 'Yellow', 'Green', 'Blue', 'Indigo', 'Violet']75], thứ hai — số chuỗi đó
5 1809 1854 1860 1891 19251
5 1809 1854 1860 1891 19252
Quảng cáo của Google, có thể dựa trên sở thích của bạn
Với danh sách và chuỗi, bạn có thể thực hiện các lát cắt. cụ thể là
l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
504 lát cắt l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
505 phần tử l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
506, l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
507,. , l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
508l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
509 lát cắt l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
510 phần tử l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
506, l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
512,. , l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
513 [nghĩa là thay đổi thứ tự của các phần tử]l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
514 cắt theo bước l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
515. l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
506, l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
517, l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
518,. . Nếu giá trị của l = [1, 2, 3]
res = [int[item] for item in l]
print[l]
print[type[l]]
515