Các kiểu tài liệu trong Python: chuỗi, số, list, tuple, set với dictionary bao gồm cách sử dụng như vậy nào? Hãy thuộc Quantrimang.com mày mò nhé!
Kiểu dữ liệu là vẻ ngoài phân loại các mục dữ liệu. Nó thay mặt cho nhiều loại giá trị cho thấy thêm hoạt đụng nào có thể thực hiện tại trên một dữ liệu cụ thể. Vì mọi thiết bị là một đối tượng trong lập trình Python, kiểu tài liệu thực sự là các class, còn phát triển thành là đối tượng người sử dụng của phần nhiều class này.
Bạn đang xem: Đâu là kiểu dữ liệu danh sách
Python có tương đối nhiều kiểu tài liệu khác nau. Nếu bạn có nhu cầu lập trình ứng dụng tốt, thì duy nhất định nên tìm hiểu chúng.
Khi làm bài kiểm tra, chúng ta dễ phát hiện những thắc mắc như trong python, đầu ra của hàm sau là gì? float(" -12345 ") lưu lại ý: số lượng khoảng trắng trước số sẽ là 5… Vậy làm nạm nào để vấn đáp những câu hỏi này thật bao gồm xác? Câu trả lời rất đối kháng giản. Đó là các bạn phải rứa vững những kiểu dữ liệu Python.
Python là một trong ngôn ngữ lập trình đặc biệt quan trọng vời không ít kiểu dữ liệu khiến cho bạn tạo phải một lịch trình hữu ích. Một trong các kiểu dữ liệu thông dụng nhất là:
Số nguyên (integer): là 1 trong những loại dữ liệu số vô hướng, ví dụ như 1, 2, 3, 4, 5.Số thực (float): là 1 trong loại tài liệu số có dấu thập phân, ví như 1.5, 2.7, 3.14.Chuỗi (string): là một trong loại dữ liệu chứa một chuỗi cam kết tự, ví như "hello", "goodbye".Boolean: là 1 trong loại tài liệu có hai giá trị là True hoặc False.Danh sách (list): là một trong loại tài liệu chứa một tập hợp các giá trị, ví như <1, 2, 3, 4, 5>.Từ điển (dictionary): là 1 trong những loại dữ liệu chứa các cặp khóa-giá trị, ví dụ như "name": "John", "age": 30.Ví dụ, chúng ta có thể dùng hàm type để khám nghiệm kiểu dữ liệu của một thay đổi như sau:
x = 1print(type(x)) # in ra ""y = 1.5print(type(y)) # in ra ""z = "hello"print(type(z)) # in ra ""Vì bài viết sẽ liệt kê hồ hết nội dung đặc biệt nhất của tất cả các kiểu dữ liệu trong Python nên sẽ khá dài. Từng kiểu dữ liệu đều kèm theo với ví dụ ví dụ để các bạn dễ hình dung.
Hãy chắc chắn là bạn đã bảo quản trang Tài liệu Python này để update những bài mới nhất nhé. Đừng quên làm bài xích tập Python nhằm củng cố kiến thức nữa nhé.
Kiểu dữ liệu trong Python
2. Kiểu tài liệu số trong Python3. Chuỗi (string)4. Danh sách (list)5. Tuple6. Set7. Dictionary1. Biến chuyển trong Python
Biến là một vị trí trong bộ nhớ lưu trữ được áp dụng để lưu trữ dữ liệu (giá trị). Biến chọn cái tên duy duy nhất để tách biệt giữa các vị trí bộ nhớ khác nhau. Những quy tắc nhằm viết thương hiệu một biến giống như quy tắc viết những định danh vào Python.
Trong Python, chúng ta không cần khai báo biến trước lúc sử dụng, chỉ việc gán cho biến đổi một quý giá và nó đang tồn tại. Cũng không cần thiết phải khai báo vẻ bên ngoài biến, kiểu biến sẽ tiến hành nhận auto dựa vào quý giá mà các bạn đã gán mang lại biến.
Gán giá bán trị cho biến:
Để gán giá trị cho phát triển thành ta áp dụng toán tử =. Bất kỳ loại cực hiếm nào cũng có thể gán cho đổi thay hợp lệ.
Ví dụ:
hoa = "Hồng"la = 3canh = 5.5Phía trên là 3 câu lệnh gán, "Hồng" là 1 trong những chuỗi ký kết tự, được gán cho trở nên hoa, 3 là số nguyên với được gán mang đến la, 5.5 là số thập phân cùng gán mang lại canh.
Gán các giá trị:
Trong Python bạn có thể thực hiện nay gán các giá trị vào một lệnh như sau:
hoa, la, canh = "Hồng", 3, 5.5Nếu mong gán quý giá giống nhau cho nhiều biến hóa thì có thể viết lệnh như sau:
hoa, la, canh = 3Lệnh trên vẫn gán quý giá 3 cho tất cả 3 trở thành là hoa, la và canh.
2. Kiểu dữ liệu số vào Python
Các kiểu tài liệu số trong Python
Python hỗ trợ số nguyên, số thập phân và số phức, bọn chúng lần lượt được quan niệm là các lớp int, float, complex trong Python. Số nguyên và số thập phân được phân biệt bởi sự có mặt hoặc vắng mặt của vệt thập phân.
Ví dụ: 5 là số nguyên, 5.0 là số thập phân. Python cũng cung ứng số phức và thực hiện hậu tố j hoặc J để chỉ phần ảo. Ví dụ: 3+5j. Không tính int và float, Python cung ứng thêm 2 loại số nữa là Decimal cùng Fraction.
Ta sẽ sử dụng hàm type() để soát sổ xem trở thành hoặc giá trị thuộc lớp số nào cùng hàm isinstance() để soát sổ xem chúng bao gồm thuộc về một class rõ ràng nào không.
a = 9# Output: print(type(a))# Output: print(type(5.0))# Output: (10+2j)b = 8 + 2jprint(b + 2)# chất vấn xem b có phải là số phức không# Output: Trueprint(isinstance(b, complex)) Số nguyên vào Python không biến thành giới hạn độ dài, số thập phân bị số lượng giới hạn đến 16 số sau dấu thập phân.
Những con số chúng là làm việc mỗi ngày thường là thông số 10, nhưng mà lập trình viên máy vi tính (thường là xây dựng viên nhúng) cần thao tác với hệ thống số nhị phân, thập lục phân và bát phân. Để biểu diễn những thông số này trong Python, ta đặt một tiền tố thích hợp trước số đó.
Tiền tố hệ số cho các số Python:
Hệ thống số | Tiền tố |
Hệ nhị phân | "0b" hoặc "0B" |
Hệ bát phân | "0o" hoặc "0O" |
Hệ thập lục phân | "0x" hoặc "0X" |
(Bạn đặt tiền tố nhưng không có dấu " " nhé).
Đây là ví dụ về bài toán sử dụng các tiền tố thông số trong Python, và khi dùng hàm print() nhằm in giá trị của bọn chúng ra màn hình, ta sẽ nhận thấy số khớp ứng trong hệ số 10.
# Output: 187print(0b10111011)# Output: 257 (250 + 7)print(0x
FA + 0b111)# Output: 15print(0o17)
Chuyển đổi giữa những kiểu số trong Python
Chúng ta có thể biến hóa kiểu số này sang đẳng cấp số khác. Điều này có cách gọi khác là cưỡng chế (coercion). Những phép toán như cộng, trừ đang ngầm biến hóa số nguyên thành số thập phân (một phương pháp tự động) nếu có một toán tử trong phép toán là số thập phân.Ví dụ: nếu như bạn thực hiện nay phép cộng giữa số nguyên là 2 cùng số thập phân là 3.0, thì 2 có khả năng sẽ bị cưỡng chế đưa thành số thập phân 2.0 và công dụng trả về vẫn là số thập phân 5.0.
Mô-đun Decimal vào Python
Class float được tích đúng theo trong Python hoàn toàn có thể khiến bọn họ ngạc nhiên song chút. Thông thường nếu tính tổng 1.1 với 2.2 ta nghĩ kết quả sẽ là 3.3, nhưng gồm vẻ chưa hẳn vậy. Nếu như bạn kiểm tra tính trắng đen của phép toán này trong Python, đã nhận được tác dụng là False.
Điều này là do, các số thập phân được thực hiện trong phần cứng máy tính dưới dạng phân số nhị phân, vì máy tính xách tay chỉ hiểu các số nhị phân (0 với 1) nên phần lớn các phân số thập phân mà họ biết, tất yêu được lưu lại trữ đúng chuẩn trong vật dụng tính.
Ví dụ, ta không thể màn biểu diễn phân số 1/3 bên dưới dạng số thập phân, vì chưng nó là một trong những thập phân vô hạn tuần hoàn, với các số sau vết thập phân lâu năm vô hạn, phải ta chỉ có thể ước tính nó.
Khi biến đổi phần thập phân 0.1, đã dẫn đến phần nhị phân nhiều năm vô hạn của 0.000110011001100110011... Và laptop chỉ lưu trữ một trong những phần số hữu hạn sau vệt . Của chính nó thôi. Vì đó, số được tàng trữ chỉ xê dịch 0.1 chứ không khi nào bằng 0.1. Đó là lý do vì sao, phép cộng bọn họ nói mang đến ở trên không đưa ra hiệu quả như họ mong đợi. Đó là số lượng giới hạn của phần cứng máy vi tính chứ chưa phải lỗi của Python.
Giờ bạn thử gõ phép cùng trên vào Python xem công dụng trả về là từng nào nhé:
Điều này cũng rất quan trọng, ví dụ như 25.50kg sẽ đúng mực hơn 25.5kg, vày 2 chữ số thập phân vẫn đúng mực hơn 1 chữ số.
from decimal import Decimal# Output: 3.3print(Decimal("1.1") + Decimal("2.2"))# Output: 10.000print(Decimal("4.0") * Decimal("2.50"))Nếu ước ao code ngắn gọn hơn, bạn có thể nhập mô-đun Decimal với sửa tên mô-đun thành D.
from decimal import Decimal as D# Output: 3.3print(D("1.1") + D("2.2"))# Output: 10.000print(D("4.0") * D("2.50"))Trong code này ta nhập mô-đun Decimal với sửa tên nó thành D, hiệu quả không thay đổi so với code trên.
Bạn rất có thể thắc mắc vào phần phép nhân, tại sao không áp dụng số Decimal nhằm nhân lại bắt buộc thêm số 0 vào sau 4 với cả 2.5. Câu trả lời là tính hiệu quả, các phép toán với số float được hiện nhanh hơn những phép toán Decimal.
Khi nào nên thực hiện Decimal cụ cho float?
Ta thường sử dụng Decimal trong các trường phù hợp sau:
Khi tạo vận dụng tài chính, cần màn trình diễn phần thập phân chủ yếu xác.Khi muốn kiểm soát mức độ chính xác của số.Khi muốn triển khai các phép toán giống như đã học tập ở trường.Phân số trong Python
Python cung cấp các phép toán liên quan đến phân số trải qua mô-đun fractions. Một phân số có tử số và mẫu số, cả hai mọi là số nguyên. Ta có thể tạo đối tượng người dùng phân số (Fraction) theo vô số phương pháp khác nhau:
import fractions# chế tạo ra phân số từ số thập phânprint(fractions.Fraction(4.5))# Output: 9/2# tạo thành phân số tự số nguyên# Code by Quantrimang.comprint(fractions.Fraction(9))# Output: 9# tạo phân số bằng phương pháp khai báo tử, chủng loại sốprint(fractions.Fraction(2,5))# Output: 2/5Khi chế tạo phân số từ bỏ float, ta hoàn toàn có thể nhận được những kết quả không bình thường, vấn đề đó là do tinh giảm của phần cứng máy tính như đã luận bàn trong phần mô-đun decimal.
Đặc biệt, chúng ta có thể khởi tạo ra một phân số từ bỏ string. Đây là bí quyết khởi tạo nên ưa ưng ý khi áp dụng số thập phân.
import fractions# Khởi chế tạo phân số từ bỏ floatprint(fractions.Fraction(0.1))# Output: 3602879701896397/36028797018963968# Khởi tạo thành phân số từ bỏ string# Code by Quantrimang.comprint(fractions.Fraction("0.1"))# Output: 1/10Kiểu tài liệu phân số hỗ trợ đầy đủ các phép toán cơ bản như cộng, trừ, nhân, chia, logic:
# Output: 1print(F(2,5) + F(3,5))# Output: 3/5print(F(2,5) + F(1,5))# Output: 7/1print(1 / F(3,7))# Output: Falseprint(F(-2,9) > 0)# Output: Trueprint(F(-2,9)
Toán học tập trong Python
Python cung cấp các mô-đun math và random để xử lý các vụ việc toán học khác ví như lượng giác, logarit, tỷ lệ và thống kê, v.v... Do mô-đun math có không ít hàm và thuộc tính, yêu cầu mình tính sẽ làm một bài riêng nhằm liệt kê chúng. Dưới đó là ví dụ về math trong Python.from fractions import Fraction as Fimport math# Output: 3.141592653589793print(math.pi)# Output: -1.0print(math.cos(math.pi))# Output: 22026.465794806718print(math.exp(10))# Output: 2.0print(math.log2(4))# Output: 1.1752011936438014print(math.sinh(1))# Output: 40320print(math.factorial(8))
Sử dụng trình phiên dịch như máy vi tính bỏ túi
Trình thông dịch hoạt động như một máy tính đơn giản: bạn cũng có thể nhập vào trong 1 phép tính với nó sẽ viết xác định giá trị. Cú pháp biểu thức khá đối kháng giản: những toán tử như +, -, * cùng / làm việc giống như trong hầu hết các ngôn ngữ lập trình khác (Pascal, C), vệt ngoặc đối chọi () hoàn toàn có thể được thực hiện để nhóm. Ví dụ:Phép chia (/) luôn luôn luôn trả về đẳng cấp float. Để thực hiện phép phân chia lấy phần nguyên (loại bỏ những số sau vết thập phân) chúng ta có thể sử dụng toán tử //; để tính phần dư thì thực hiện % như ví dụ dưới đây:
Traceback (most recent call last):File "", line 1, in NameError: name "n" is not defined
Python cung cấp đầy đủ cho dấu chấm động, phép tính bao gồm cả số nguyên với số thập phân thì hiệu quả sẽ trả về số bên dưới dạng thập phân (nguyên văn: toán tử cùng với toán hạng phong cách hỗn hợp biến đổi toán hạng số nguyên quý phái số thập phân):Bạn đề nghị coi biến này là read-only, chớ gán giá trị mang lại nó - vì nếu tạo nên một phát triển thành cùng tên nó sẽ chiếm phần mất trở thành mặc định này và không còn khiến cho được những thứ hay ho như trên nữa.
3. Chuỗi (string)
String trong Python là 1 trong những dãy những ký tự. Máy tính không xử lý những ký tự, bọn chúng chỉ làm việc với số nhị phân. Dù chúng ta có thể nhìn thấy các ký tự trên màn hình, nhưng chúng được lưu trữ và xử trí nội bộ dưới dạng phối kết hợp của số 0 với 1. Việc đổi khác ký tự thành số được hotline là mã hóa và quy trình ngược lại được điện thoại tư vấn là giải mã. ASCII với Unicode là 2 trong số những mã hóa thông dụng thường được sử dụng.
Trong Python, string là một trong những dãy các ký tự Unicode. Unicode bao gồm mọi ký kết tự trong tất cả các ngôn từ và mang đến tính đồng nhất trong mã hóa.
Cách chế tạo ra string vào Python
Bên cạnh số, Python cũng có thể thao tác với chuỗi, được biểu diễn bằng nhiều cách. Chúng có thể được nhằm trong dấu nháy đơn ("...") hoặc kép ("...") với một kết quả. được thực hiện để "trốn (escape)" 2 vết nháy này.
First line.Second line.Nếu không muốn những ký tự được thêm vào bởi vì được trình thông dịch hiểu là ký kết tự đặc trưng thì sử dụng chuỗi raw bằng phương pháp thêm r vào trước lốt nháy đầu tiên:C:some ameChuỗi cam kết tự dạng chuỗi có thể viết trên những dòng bằng phương pháp sử dụng 3 lốt nháy: """...""" hoặc """...""". Chấm dứt dòng auto bao tất cả trong chuỗi, nhưng hoàn toàn có thể ngăn chặn điều này bằng phương pháp thêm vào thời gian cuối dòng. Ví dụ:
print("""Usage: thingy
Đây là danh sách tất cả các cam kết tự thoát (escape sequence) được Python hỗ trợ:
ewline | Dấu gạch chéo cánh ngược cùng dòng new bị quăng quật qua |
\ | Dấu gạch chéo cánh ngược |
" | Dấu nháy đơn |
" | Dấu nháy kép |
a | ASCII Bell |
ASCII Backspace | |
f | ASCII Formfeed |
ASCII Linefeed | |
ASCII Carriage Return | |
ASCII Horizontal Tab | |
v | ASCII Vertical Tab |
ooo | Ký tự có giá trị chén phân là ooo |
x HH | Ký tự có giá trị thập lục phân là HH |
Ví dụ: Hãy chạy từng lệnh đơn độc ngay trong trình biên dịch nhằm thấy tác dụng bạn nhé.
Ngoài vấn đề đánh số, thì giảm lát cũng rất được hỗ trợ. Trong những lúc index được sử dụng để lấy các cam kết tự chơ vơ thì thái lát sẽ cho phép bạn lấy chuỗi con:
+---+---+---+---+---+---+| p. | y | t | h | o | n |+---+---+---+---+---+---+0 1 2 3 4 5 6-6 -5 -4 -3 -2 -1Hàng trước tiên của số mang về vị trí của chỉ số từ bỏ 0 mang lại 6 trong chuỗi. Hàng đồ vật hai là những chỉ số âm tương ứng. Khi cắt từ i đến j sẽ bao gồm tất cả những ký tự nằm giữa i với j, tương ứng.
Đối với các chỉ số không âm, chiều lâu năm của một lát cắt là việc chênh lệch của các chỉ số, trường hợp cả hai đều phía bên trong giới hạn. Ví dụ, chiều nhiều năm của word<1:3> là 2.
Cố gắng thực hiện một chỉ mục quá lớn sẽ trả về hiệu quả lỗi:
Traceback (most recent điện thoại tư vấn last):File "", line 1, in IndexError: string index out of range
Tuy nhiên, các chỉ mục phía bên ngoài phạm vi lát giảm vẫn được xử lý gọn gàng khi được thực hiện để cắt:Error: "str" object does not tư vấn item assignment
Nếu phải một chuỗi khác, cách tốt nhất có thể là chế tạo ra mới:
qtm_string = "quantrimang.com"del qtm_string# Output: Name
Error: name "qtm_string" is not definedqtm_string
Nối chuỗi
Các chuỗi có thể được nối cùng với nhau bằng toán tử + và thay thế sửa chữa bằng *:Error: invalid syntaxNếu mong ghép nối các biến cùng nhau hoặc vươn lên là với chuỗi hãy áp dụng dấu +:
count = 0for letter in "Quantrimang.com":if(letter == "i"):count += 1# Output: có 1 chữ i được tra cứu thấyprint("Có", count,"chữ i được tìm kiếm thấy")Để bình chọn một chuỗi con có trong chuỗi giỏi chưa, hãy sử dụng từ khóa in, như sau:
Hàm len() được tích hợp trong Python, đang trả về độ dài của chuỗi:
qtm_str = "Python"# enumerate()qtm_enum = list(enumerate(qtm_str))# Output: list(enumerate(qtm_str) = <(0, "P"), (1, "y"), (2, "t"), (3, "h"), (4, "o"), (5, "n")>print("list(enumerate(qtm_str) = ", qtm_enum)
Phương thức format() để định dạng chuỗi
Phương thức format() rất thiêng hoạt cùng đầy sức khỏe khi dùng làm định dạng chuỗi. Định dạng chuỗi cất dấu làm cho trình giữ nơi hoặc trường thay thế để dìm giá trị thế thế. Chúng ta có thể sử dụng đối số địa điểm hoặc tự khóa để hướng đẫn thứ tự.# default(implicit) orderthu_tu_mac_dinh = ", và ".format("Quản","Trị","Mạng")print(" --- trang bị tự mang định ---")print(thu_tu_mac_dinh)# sử dụng đối số vị trí để bố trí thứ tựvi_tri_thu_tu= "1, 0 với 2".format("Quản","Trị","Mạng")print(" --- lắp thêm tự theo địa chỉ ---")print(vi_tri_thu_tu)# thực hiện từ khóa để thu xếp thứ tựtu_khoa_thu_tu = "s, b và j".format(j="Quản",b="Trị",s="Mạng")print(" --- đồ vật tự theo trường đoản cú khóa ---")print(tu_khoa_thu_tu)Ta có kết quả khi chạy code trên như sau:
--- thiết bị tự khoác định ---Quản, Trị cùng Mạng--- thứ tự theo địa điểm ---Trị, Quản và Mạng--- sản phẩm tự theo trường đoản cú khóa ---Mạng, Trị với Quản
Phương thức format() hoàn toàn có thể có đông đảo đặc tả định dạng tùy chọn. Bọn chúng được bóc tách khỏi tên trường bởi dấu :. Ví dụ, có thể căn trái hoặc căn giữa ^ một chuỗi trong không khí đã cho. Có thể định dạng số nguyên như số nhị phân, thập lục phân; số thập phân hoàn toàn có thể được làm tròn hoặc hiển thị dưới dạng số mũ. Có tương đối nhiều định dạng bạn cũng có thể sử dụng.
Bạn có thể định dạng chuỗi trong Python về phong cách sprintf() được áp dụng trong ngôn ngữ lập trình C bằng toán tử %.
TriTri
4. List (list)
Python hỗ trợ một loạt những dữ liệu phức hợp, hay được gọi là những chuỗi (sequence), áp dụng để nhóm những giá trị không giống nhau. Đa năng nhất là danh sách (list).Cách tạo menu trong Python
Trong Python, danh mục được biểu diễn bằng dãy các giá trị, được phân bóc nhau bằng dấu phẩy, phía bên trong dấu <>. Những danh sách bao gồm thể đựng được nhiều mục với kiểu khác nhau, nhưng thường thì là các mục bao gồm cùng kiểu.
list1 = <> # menu rỗnglist2 = <1, 2, 3> # menu số nguyênlist3 = <1, "Hello", 3.4> # danh mục với kiểu tài liệu hỗn hợp
Bạn cũng rất có thể tạo các list lồng nhau (danh sách chứa trong danh sách), ví dụ:
a = <"a", "b", "c">n = <1, 2, 3>x = print (x) # Output: <<"a", "b", "c">, <1, 2, 3>>print (x<0>) # Output: <"a", "b", "c">print(x<0><1>) # Output: b
Hoặc khai báo danh sách lồng nhau trường đoản cú đầu:
list4 = Truy cập vào phần tử của list
Có nhiều cách không giống nhau để truy cập vào bộ phận của một danh sách:
Index (chỉ mục) của list:
Sử dụng toán tử index <> để truy cập vào 1 phần tử của list. Index bắt đầu từ 0, buộc phải một list tất cả 5 phần tử sẽ gồm index từ bỏ 0 mang đến 4. Truy vấn vào bộ phận có index khác index của list sẽ làm cho phát sinh lỗi Index
Error. Index cần là một số nguyên, ko thể áp dụng float, tuyệt kiểu dữ liệu khác, sẽ khởi tạo lỗi Type
Error.
qtm_list = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># Type
Error: danh sách indices must be integers or slices, not float# Type
Error: index của list đề nghị là số nguyên hoặc slice, chưa hẳn số thập phânqtm_list<2.0>List lồng nhau hoàn toàn có thể truy cập bởi index lồng nhau:
qtm_list = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># Output: qprint(qtm_list<0>)# Output: aprint(qtm_list<2>)# Output: tprint(qtm_list<4>)# các mục lồng nhauln_list = <"Happy", <1,3,5,9>># Index lồng nhau# Output: aprint(ln_list<0><1>)# Output: 9print(ln_list<1><3>)Index âm:
Python chất nhận được lập chỉ mục âm cho những chuỗi. Index -1 là bộ phận cuối cùng, -2 là bộ phận thứ 2 từ cuối cùng lên. Nói đơn giản và dễ dàng là index âm dùng khi bạn đếm bộ phận của chuỗi ngược từ cuối lên đầu.
qtm_list = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># Code by Quantrimang.com# Output: mprint(qtm_list<-1>)# Output: iprint(qtm_list<-9>)
Cắt lát (slice) các mục trong Python
Python có thể chấp nhận được truy cập vào một dải thành phần của list bằng phương pháp sử dụng toán tử thái lát : (dấu nhị chấm). Mọi hành động cắt list đều trả về list bắt đầu chứa số đông yếu tố được yêu thương cầu.qtm_list = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># Code by Quantrimang.com# Output: <"u", "a", "n", "t">print(qtm_list<1:5>)# Output: <"q", "u", "a", "n", "t", "r", "i">print(qtm_list<:-8>)# Output: <"n", "g", ".", "c", "o", "m">print(qtm_list<9:>)Để thái theo từng lát list, bạn chỉ cần sử dụng vết : giữa 2 index phải lấy những phần tử. <1:5> sẽ lấy bộ phận 1 cho 5, <:-8> mang từ 0 đến bộ phận -8,...
Nếu thực hiện hành vi cắt sau thì nó vẫn trả về một list mới là phiên bản sao của danh sách ban đầu:
qtm_list = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># Output: <"q", "u", "a", "n", "t", "r", "i", "m", "a", "n", "g", ".", "c", "o", "m">print(qtm_list<:>)
Thay đổi hoặc thêm phần tử vào list
List cũng hỗ trợ các vận động như nối list:my_list = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># xóa thành phần có index là 2del my_list<2># Output: <"q", "u", "n", "t", "r", "i", "m", "a", "n", "g", ".", "c", "o", "m"> print(my_list)# xóa bộ phận có index từ là 1 đến 7del my_list<1:7># Output: <"q", "a", "n", "g", ".", "c", "o", "m">print(my_list)# xóa toàn bộ list my_listdel my_list# Error: Name
Error: name "my_list" is not definedprint(my_list)Bạn cũng có thể sử dụng remove() để loại bỏ những bộ phận đã cho hoặc pop() để loại bỏ phần tử tại một index nhất định. Pop() nhiều loại bỏ phần tử và trả về thành phần cuối cùng nếu index không được chỉ định. Điều này giúp xúc tiến list bên dưới dạng stack (ngăn xếp) (cấu trúc tài liệu first in last out - vào đầu tiên, ra cuối cùng).
Ngoài ra, cách tiến hành clear() cũng được dùng để gia công rỗng một danh mục (xóa tất cả các thành phần trong list).
my_list = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m">my_list.remove(".")# Output: <"q", "u", "a", "n", "t", "r", "i", "m", "a", "n", "g", "c", "o", "m"> print(my_list)# Output: nprint(my_list.pop(3))# Output: <"q", "u", "a", "t", "r", "i", "m", "a", "n", "g", "c", "o", "m">print(my_list)# Output: mprint(my_list.pop())# Output: <"q", "u", "a", "t", "r", "i", "m", "a", "n", "g", "c", "o">print(my_list)my_list.clear()# Output: <> (list rỗng)print(my_list)Cách sau cùng để xóa các phần tử trong một danh mục là gán một list rỗng cho các lát phần tử.
append(): Thêm bộ phận vào cuối list.extend(): Thêm tất cả thành phần của list hiện tại vào danh mục khác.insert(): Chèn một phần tử vào index cho trước.remove(): Xóa thành phần khỏi list.pop(): Xóa bộ phận khỏi các mục và trả về thành phần tại index đã cho.clear(): Xóa vớ cả bộ phận của list.index(): Trả về index của thành phần phù hợp đầu tiên.count(): Trả về số lượng phần tử đã đếm được trong danh sách như một đối số.sort(): bố trí các phần tử trong các mục theo sản phẩm tự tăng dần.reverse(): Đảo ngược sản phẩm công nghệ tự các phần tử trong list.copy(): Trả về phiên bản sao của list.Ví dụ:
QTM = <9,8,7,6,8,5,8># Output: 2print(QTM.index(7))# Output: 3print(QTM.count(8))QTM.sort()# Output: <5, 6, 7, 8, 8, 8, 9>print(QTM)QTM.reverse()# Output: <9, 8, 8, 8, 7, 6, 5>print(QTM)Ví dụ 2:
QTM = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># Output: 3print(QTM.index("n"))# Output: 2print(QTM.count("a"))QTM.sort()# Output: <".", "a", "a", "c", "g", "i", "m", "m", "n", "n", "o", "q", "r", "t", "u">print(QTM)QTM.reverse()# Output: <"u", "t", "r", "q", "o", "n", "n", "m", "m", "i", "g", "c", "a", "a", ".">print(QTM)
List comprehension: phương pháp tạo list mới ngắn gọn
List comprehension là một biểu thức kèm theo với lệnh for được để trong cặp lốt ngoặc vuông <>.Ví dụ:
cub3 = <3 ** x for x in range(9)># Output: <1, 3, 9, 27, 81, 243, 729, 2187, 6561>print(cub3)Code trên tương tự với:
cub3 = <>for x in range (9):cub3.append(3**x)print(cub3)Ngoài for, if cũng hoàn toàn có thể được thực hiện trong một list comprehension của Python. Lệnh if hoàn toàn có thể lọc các thành phần trong list hiện tại để chế tạo thành list mới. Dưới đấy là ví dụ:
cub3 = <3 ** x for x in range(9) if x > 4># Output: <243, 729, 2187, 6561>print(cub3)so_le = Kiểm tra phần tử có trong danh mục không
Sử dụng từ khóa in để chất vấn xem một trong những phần tử đã bao gồm trong menu hay chưa. Nếu thành phần đã tồn tại, kết quả trả về là True, và ngược lại sẽ trả về False.
QTM = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># Output: Trueprint("q" in QTM)# Output: Trueprint("." in QTM)# Output: Falseprint("z" in QTM)
Vòng lặp for trong list
Sử dụng vòng lặp for nhằm lặp qua các thành phần trong danh sách như ví dụ bên dưới đây:for ngon_ngu in <"Python","Java","C">:print("Tôi mê thích lập trình",ngon_ngu)Kết trái trả về sẽ như sau:
Tôi yêu thích lập trình Python
Tôi ham mê lập trình Java
Tôi say đắm lập trình C
Các hàm Python tích hợp với list
Các hàm Python tích hợp sẵn như all(), any(), enumerate(), len(), max(), min(), list(), sorted(),... Thường được thực hiện với list để thực hiện những trách nhiệm khác nhau.all(): Trả về cực hiếm True nếu tất cả các phần tử của list đều là true hoặc các mục rỗng.any(): Trả về True khi ngẫu nhiên phần tử như thế nào trong list là true. Nếu các mục rỗng hàm trả về cực hiếm False.enumerate(): Trả về đối tượng người sử dụng enumerate, đựng index và cực hiếm của tất cả các thành phần của danh sách dưới dạng tuple.len(): Trả về độ lâu năm (số lượng phần tử) của list.list(): thay đổi một đối tượng rất có thể lặp (tuple, string, set, dictionary) thành list.max(): Trả về phần tử lớn tốt nhất trong list.min(): Trả về phần tử nhỏ tuổi nhất trong list.sorted(): Trả về list new đã được sắp đến xếp.sum(): Trả về tổng của tất cả các thành phần trong list.5. Tuple
Tuple vào Python là 1 chuỗi các phần tử có sản phẩm công nghệ tự y hệt như list. Sự khác hoàn toàn giữa danh sách và tuple là họ không thể chuyển đổi các bộ phận trong tuple khi đã gán, tuy nhiên trong menu thì các thành phần có thể cố đổi.
Tuple thường được sử dụng cho những dữ liệu không chất nhận được sửa thay đổi và nhanh hơn list bởi nó không thể biến hóa tự động. Một tuple được định nghĩa bằng dấu ngoặc solo (), các bộ phận trong tuple biện pháp nhau bởi dấu phẩy (,).
Ví dụ:
t = (10, "quan tri mang", 2j)Bạn hoàn toàn có thể sử dụng toán tử cắt <> nhằm trích xuất thành phần trong tuple nhưng lại không thể biến hóa giá trị của nó.
t = (10, "quan tri mang", 2j)#t<0:2> = (10, "quan tri mang")print("t<0:2> = ", t<0:2>)Chạy code bên trên ta được kết quả:
t<0:2> = (10, "quan tri mang")
Tuple hơn menu ở điểm nào?
Vì tuple và menu khá như là nhau, nên chúng hay được sử dụng giữa những tình huống tương tự như nhau. Tuy nhiên, tuple vẫn có những ưu thế nhất định đối với list, như:Tuple thường xuyên được sử dụng cho các kiểu dữ liệu không đồng điệu (khác nhau) và danh sách thường sử dụng cho những kiểu dữ liệu (đồng nhất) tương đương nhau.Vì tuple không thể núm đổi, việc lặp qua các thành phần của tuple nhanh hơn so với list. Bởi vậy, trong trường phù hợp này tuple chỉ chiếm ưu gắng về năng suất hơn danh mục một chút.Tuple chứa những thành phần không gắng đổi, có thể được áp dụng như key đến dictionary. Với list, vấn đề này không thể làm được.Nếu có dữ liệu không biến hóa việc thực thi nó như một tuple sẽ bảo đảm rằng dữ liệu đó được đảm bảo chống ghi (write-protected).Tạo một tuple
Tuple được tạo bằng cách đặt toàn bộ các phần tử của nó trong vệt ngoặc solo (), phân bóc tách bằng lốt phẩy. Chúng ta có thể bỏ lốt ngoặc 1-1 nếu muốn, nhưng đề nghị thêm nó vào cho code cụ thể hơn.
Tuple không bị giới hạn số lượng thành phần và tất cả thể có tương đối nhiều kiểu dữ liệu khác nhau như số nguyên, số thập phân, list, string,...
# Tuple rỗng# Output: ()my_tuple = ()print(my_tuple)# tuple số nguyên# Output: (2, 4, 16, 256)my_tuple = (2, 4, 16, 256)print(my_tuple)# tuple có tương đối nhiều kiểu dữ liệu# Output: (10, "Quantrimang.com", 3.5)my_tuple = (10, "Quantrimang.com", 3.5)print(my_tuple)# tuple lồng nhau# Output: ("QTM", <2, 4, 6>, (3, 5, 7))my_tuple = ("QTM", <2, 4, 6>, (3, 5, 7))print(my_tuple)# tuple có thể được sinh sản mà không phải dấu ()# còn được gọi là đóng gói tuple# Output: (10, "Quantrimang.com", 3.5)my_tuple = 10, "Quantrimang.com", 3.5print(my_tuple)# mở gói (unpacking) tuple cũng có thể làm được# Output:# 10# Quantrimang.com# 3.5a, b, c = my_tupleprint(a)print(b)print(c) chế tạo tuple chỉ có một trong những phần tử hơi phức tạp chút, nếu như khách hàng tạo theo cách thông thường là cho thành phần đó vào trong cặp vệt () là chưa đủ, cần được thêm vết phẩy để chỉ ra rằng rằng, đó là tuple.
# chế tác tuple chỉ cách ()# Output: my_tuple = ("Quantrimang.com")print(type(my_tuple))# khi thêm lốt phẩy vào cuối# Output: my_tuple = ("Quantrimang.com",) print(type(my_tuple))# lốt () là tùy chọn, chúng ta cũng có thể bỏ trường hợp thích# Output: my_tuple = "Quantrimang.com",print(type(my_tuple))
Truy cập vào các thành phần của tuple
Có những cách không giống nhau để truy cập vào các bộ phận của một tuple, khá tương tự với list, nên mình không đem ví dụ nạm thể, các chúng ta cũng có thể xem lại phần danh mục nha.Xem thêm: Bàn học liền giá sách xuân hòa bhs 13, bàn học sinh có giá sách bhs
Index: Sử dụng toán tử index <> để truy vấn vào bộ phận trong tuple cùng với index bước đầu bằng 0. Nghĩa là nếu tuple bao gồm 6 thành phần thì index của nó sẽ bắt đầu từ 0 mang lại 5. Nếu vắt gắn truy vấn đến index 6, 7 thì sẽ tạo lỗi Index
Error. Index cần phải là số nguyên, mà quan trọng là số thập phân hay bất kỳ kiểu dữ liệu nào khác, nếu như không sẽ khởi tạo lỗi Type
Error. Gần như tuple lồng nhau được truy cập bằng cách sử dụng index lồng nhau:
# tuple lồng nhaun_tuple = ("Quantrimang.com", <2, 6, 8>, (1, 2, 3))# index lồng nhau# Output: "r"print(n_tuple<0><5>)# index lồng nhau# Output: 8print(n_tuple<1><2>)Index âm: Python được cho phép lập chỉ mục âm đến các đối tượng người tiêu dùng dạng chuỗi. Index -1 tham chiếu đến thành phần cuối cùng, -2 là thứ 2 tính từ cuối tính lên.
Cắt lát: hoàn toàn có thể truy cập mang lại một loạt thành phần trong tuple bằng phương pháp sử dụng toán tử thái lát : (dấu 2 chấm).
Thay đổi một tuple
Không giống như list, tuple không thể cầm cố đổi. Điều này tức là các bộ phận của một tuple ko thể biến đổi một khi đã có được gán. Nhưng, nếu phiên bản thân phần tử đó là 1 trong kiểu dữ liệu có thể chuyển đổi (như danh sách chẳng hạn) thì các bộ phận lồng nhau rất có thể được cầm cố đổi. Bọn họ cũng hoàn toàn có thể gán giá trị khác cho tuple (gọi là gán lại - reassignment).
my_tuple = (1, 3, 5, <7, 9>)# không thể thay đổi phần tử của tuple# nếu bạn bỏ lốt # ở chiếc 8# các bạn sẽ nhận được lỗi:# Type
Error: "tuple" object does not support item assignment#my_tuple<1> = 9# Nhưng bộ phận có index 3 trong tuple là list# list có thể thay đổi, nên thành phần đó hoàn toàn có thể thay đổi# Output: (1, 3, 5, <8, 9>)my_tuple<3><0> = 8print(my_tuple)# trường hợp cần thay đổi tuple hãy gán lại giá bán trị cho nó# Output: ("q", "u", "a", "n", "t", "r", "i", "m", "a", "n", "g")my_tuple = ("q", "u", "a", "n", "t", "r", "i", "m", "a", "n", "g")print(my_tuple)Bạn hoàn toàn có thể dùng toán tử + để nối 2 tuple, toán tử * để tái diễn tuple theo mốc giới hạn đã cho. Cả + và * mọi cho tác dụng là một tuple mới.
# Nối 2 tuple# Output: (2, 4, 6, 3, 5, 7)print((2, 4, 6) + (3, 5, 7))# lặp lại tuple# Output: ("Quantrimang.com", "Quantrimang.com", "Quantrimang.com")print(("Quantrimang.com",) * 3)
Xóa tuple
Các bộ phận trong tuple không thể đổi khác nên họ cũng thiết yếu xóa, nhiều loại bỏ thành phần khỏi tuple. Nhưng vấn đề xóa trọn vẹn một tuple hoàn toàn có thể thực hiện nay được với tự khóa del như bên dưới đây:QTM = ("q","u","a","n","t","r","i","m","a","n","g",".","c","o","m")# quan trọng xóa phần tử của tuple# nếu như bạn chạy lệnh del QTM<3># sẽ khởi tạo ra lỗi:# Type
Error: "tuple" object doesn"t tư vấn item deletion# có thể xóa toàn bộ tupledel QTM# tiếp nối thử chạy print (QTM) đang trả về lỗi# Name
Error: name "QTM" is not defined
Phương thức cùng hàm cần sử dụng với tuple vào Python
Phương thức thêm thành phần và xóa phần tử không thể áp dụng với tuple, chỉ có 2 thủ tục sau là sử dụng được:count(x): Đếm số thành phần x vào tuple.index(x): Trả về quý hiếm index của phần tử x đầu tiên mà nó chạm chán trong tuple.QTM = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># Count# Output: 2print(QTM.count("m"))# Index# Output: 3print(QTM.index("n"))Các hàm dùng trong tuple khá giống như với list, tất cả có:
all(): Trả về quý hiếm True nếu tất cả các phần tử của tuple là true hoặc tuple rỗng.any(): Trả về True nếu bất kỳ phần tử nào của tuple là true, trường hợp tuple rỗng trả về False.enumerated(): Trả về đối tượng người tiêu dùng enumerate (liệt kê), chứa cặp index và giá trị của tất cả phần tử của tuple.len(): Trả về độ dài (số phần tử) của tuple.max(): Trả về thành phần lớn độc nhất của tuple.min(): Trả về phần tử bé dại nhất của tuple.sorted(): Lấy phần tử trong tuple cùng trả về list bắt đầu được bố trí (tuple không thu xếp được).sum(): Trả về tổng tất cả các bộ phận trong tuple.tuple(): biến hóa những đối tượng có thể lặp (list, string, set, dictionary) thành tuple.Kiểm tra phần tử trong tuple
Bạn hoàn toàn có thể kiểm tra xem một phần tử sẽ tồn tại trong tuple hay không với tự khóa in.
QTM = <"q","u","a","n","t","r","i","m","a","n","g",".","c","o","m"># đánh giá phần tử# Output: Trueprint("a" in QTM)# Output: Falseprint("b" in QTM)# Not in operation# Output: Falseprint("g" not in QTM)
Lặp qua các phần tử của tuple vào Python
Sử dụng vòng lặp for để lặp qua các thành phần trong tuple.for ngon_ngu in ("Python","C++","Web"):print("Tôi đam mê lập trình",ngon_ngu)Kết quả trả về vẫn như sau:
Tôi say mê lập trình Python
Tôi ưng ý lập trình C++Tôi ưng ý lập trình Web
6. Set
Set vào Python là tập thích hợp các phần tử duy nhất, không có thứ tự. Các thành phần trong set chia cách nhau bởi dấu phẩy và bên trong dấu ngoặc nhọn . Ghi nhớ kỹ rằng các phần tử trong set không có thứ tự. Tuy vậy các bộ phận trong set có thể thay đổi, rất có thể thêm hoặc xóa thành phần của set. Set có thể được áp dụng để thực hiện các phép toán như tập hợp, giao,...Cách sinh sản set
Set được tạo bằng cách đặt toàn bộ các bộ phận trong dấu ngoặc nhọn, phân tách bằng dấu phẩy hoặc áp dụng hàm set(). Set giới hạn max số lượng phần tử, nó gồm thể đựng được nhiều kiểu vươn lên là khác nhau, nhưng cấp thiết chứa bộ phận có thể đổi khác được như list, set tuyệt dictionary.
Ví dụ về set:
a = 5,2,3,1,4Nếu triển khai lệnh in như sau:
print("a=", a)Bạn sẽ cảm nhận kết quả:
a = 1, 2, 3, 4, 5Set với rất nhiều kiểu tài liệu hỗn đúng theo như sau:
my_set = 1.0, "Xin chào", (1, 2, 3)#Output: QTM_Set= "Xin chào", 1.0, (1, 2, 3)print("QTM_Set=",my_set)Tạo set rỗng gồm chút khó khăn. Cặp vệt sẽ khởi tạo một dictionary vào Python. Để chế tác set ko có bộ phận nào, ta áp dụng hàm set() mà không tồn tại đối số nào.
# initialize a with qtm = # kiểm soát kiểu tài liệu của qtm# Output: print(type(qtm))# Khởi tạo nên qtm cùng với set()qtm = set()# chất vấn kiểu dữ liệu của qtm# Output: print(type(qtm))
Làm sao để thay đổi set vào Python
Vì phối là tập phù hợp các phần tử không có thứ tự nên có thể mục chả có chân thành và ý nghĩa gì cùng với set. Cho nên vì thế toán tử giảm <> đang không thao tác trên set. Nếu cố tình dùng, bạn sẽ nhận được thông báo lỗi như bên dưới đây:Error: "set" object does not support indexingĐể thêm một phần tử vào set, bạn áp dụng add() cùng để thêm nhiều phần tử dùng update(). Update() hoàn toàn có thể nhận tuple, list, strring và set có tác dụng đối số. Trong phần nhiều trường hợp, Set có giá trị duy nhất, các bản sao sẽ auto bị loại bỏ.
# Khởi tạo ra my_setmy_set = 1,3print(my_set)# Nếu quăng quật dấu # ở mẫu 9,# bạn sẽ nhận được lỗi# Type
Error: "set" object does not tư vấn indexing#my_set<0># góp thêm phần tử# Output: 1, 2, 3my_set.add(2)print(my_set)# Thêm nhiều thành phần vào set# Output: 1, 2, 3, 4my_set.update(<2,3,4>)print(my_set)# Thêm menu và set# Output: 1, 2, 3, 4, 5, 6, 8my_set.update(<4,5>, 1,6,8)print(my_set)
Xóa thành phần khỏi set
Bạn cần sử dụng discard() với remove() nhằm xóa thành phần cụ thể khỏi set. Khi thành phần cần xóa không tồn tại trong phối thì discard() không làm gì cả, còn remove() đã báo lỗi.# Khởi chế tác my_setmy_set = 1, 3, 4, 5, 6print(my_set)# Xóa bộ phận bằng discard()# Output: 1, 3, 5, 6my_set.discard(4)print(my_set)# Xóa bởi remove()# Output: 1, 3, 5my_set.remove(6)print(my_set)# Xóa thành phần không bao gồm # trong set bằng discard()# Output: 1, 3, 5my_set.discard(2)print(my_set)# Xóa thành phần không tất cả # vào set bởi remove()# nếu như khách hàng bỏ dấu # ở loại 27,# bạn sẽ nhận được lỗi.# Output: Key
Error: 2#my_set.remove(2)Bạn rất có thể xóa với trả lại một mục bởi phương thức pop(). Set không có thứ tự, không có cách nào nhằm xác định bộ phận nào sẽ bị xóa, điều này ra mắt hoàn toàn ngẫu hứng. Việc xóa trọn vẹn set được thực hiện bằng phương pháp dùng clear().
# Khởi tạo ra my_set# Output: set of quality elementsmy_set = set("Quantrimang.com")print(my_set)# xóa thành phần bằng pop()# Output: bộ phận bị xóa ngẫu nhiênprint(my_set.pop())# xóa phần tử khác bằng pop()# Output: bộ phận bị xóa ngẫu nhiênmy_set.pop()print(my_set)# clear my_set#Output: set()my_set.clear()print(my_set)
Các toán tử set trong Python
Set thường được thực hiện để chứa các toán tử tập thích hợp như hợp, giao, hiệu, bù. Tất cả cả cách thức và toán tử để tiến hành những phép toán tập hợp này.Ta sẽ thực hiện 2 tập vừa lòng dưới đây:
# Khởi tạo A và bố = 1, 2, 3, 4, 5B = 4, 5, 6, 7, 8# áp dụng toán tử | # Output: 1, 2, 3, 4, 5, 6, 7, 8print(A | B)# thực hiện hàm union()# Output: Như trênprint(A.union(B))print(B.union(A))Giao của A cùng B là tập hòa hợp những phần tử chung của A và B. Để kiếm tìm giao của A và B ta rất có thể dùng toán tử và hoặc hàm intersection().
# khởi chế tạo ra A và tía = 1, 2, 3, 4, 5B = 4, 5, 6, 7, 8# sử dụng & # Output: 4, 5print(A & B)# áp dụng intersection()# Output: 4, 5print(A.intersection(B))print(B.intersection(A))Hiệu của A cùng B (A-B) là tập hợp thành phần chỉ tất cả trong A, không có trong B. Hiệu của B và A (B-A) là tập hợp thành phần chỉ bao gồm trong B không tồn tại trong A. Rất có thể sử dụng toán tử - hoặc hàm difference() để triển khai phép toán tập vừa lòng này.
# Khởi tạo nên A và bố = 1, 2, 3, 4, 5B = 4, 5, 6, 7, 8# áp dụng toán tử - bên trên A# Output: 1, 2, 3print(A - B)# sử dụng hàm difference() trên A# Output: 1, 2, 3print(A.difference(B))# thực hiện toán tử - trên B# Output: 8, 6, 7print(B - A)# thực hiện difference() trên B# Output: 8, 6, 7print(B.difference(A))Bù của A và B là tập hòa hợp những bộ phận có trong A và B cơ mà không phải bộ phận chung của nhì tập thích hợp này. Chúng ta cũng có thể dùng toán tử ^ hoặc hàm symmetric_difference() để thực hiện phép bù.
# Khởi sinh sản A và ba = 1, 2, 3, 4, 5B = 4, 5, 6, 7, 8# áp dụng toán tử ^# Output: 1, 2, 3, 6, 7, 8print(A ^ B)# sử dụng symmetric_difference() bên trên A# Output: 1, 2, 3, 6, 7, 8print(A.symmetric_difference(B))
Các thủ tục dùng bên trên set
Phương thức | Mô tả |
add() | Thêm một phần tử vào set. |
clear() | Xóa vớ cả bộ phận của set. |
copy() | Trả về bạn dạng sao chép của set. |
difference() | Trả về set new chứa những bộ phận khác nhau của 2 hay những set. |
difference_update() | Xóa toàn bộ các phần tử của set khác từ phối này. |
discard() | Xóa phần tử nếu nó xuất hiện trong set. |
intersection() | Trả về set new chứa thành phần chung của 2 set. |
intersection_update() | Cập nhật phối với bộ phận chung của chính nó và mix khác. |
isdisjoint() | Trả về True nếu như 2 set ko có phần tử chung. |
issubset() | Trả về True nếu như set khác chứa set này. |
issuperset() | Trả về True giả dụ set này không set khác. |
pop() | Xóa cùng trả về thành phần ngẫu nhiên, báo lỗi Key Error nếu set rỗng. |
remove() | Xóa thành phần từ set. Nếu bộ phận đó không tồn tại trong set vẫn báo lỗi Key Error. |
symmetric_difference() | Trả về set bắt đầu chứa những phần tử không nên là bộ phận chung của 2 set. |
symmetric_difference_update() | Cập nhật set với những thành phần khác nhau của chính nó và mix khác. |
union() | Trả về set mới là hợp của 2 set. |
update() | Cập nhật mix với hợp của chính nó và phối khác. |
Kiểm tra phần tử trong set
Bạn có thể kiểm tra một đối tượng người dùng xem nó gồm nằm trong mix không, áp dụng từ khóa in.# Khởi chế tạo my_setmy_set = set("Quantrimang.com")# khám nghiệm xem Q tất cả trong my_set không# Output: Trueprint("Q" in my_set)# soát sổ xem q bao gồm trong my_set không# Output: Falseprint("q" in my_set)
Lặp qua phần tử của set
Sử dụng vòng lặp for để lặp qua các bộ phận của set.for letter in set("Python"):print(letter)Chạy code trên các bạn nhận được tác dụng như sau:
ty
Phon
Hàm hay được sử dụng trên set
Các hàm hay sử dụng trên set bao gồm all(), any(), enumerate(), len(), max(), min(), sorted(), sum(). Chức năng của gần như hàm này khá tương đương với khi bạn sử dụng trên list, tuple, bạn có thể tham khảo thêm nếu chưa rõ nha.Hàm | Mô tả |
all() | Trả về True nếu tất cả thành phần của set phần đông là true (hoặc trường hợp set là empty). |
any() | Trả về True nếu như phần tử bất kỳ được tùy chỉnh thiết lập là true. Nếu như set là empty, trả về False . |
enumerate() | Trả về một đối tượng người tiêu dùng liệt kê. Nó cất chỉ mục và cực hiếm cho toàn bộ các mục của tập thích hợp dưới dạng một cặp. |
len() | Trả về độ dài (số của những mục) trong set. |
max() | Trả về mục lớn số 1 trong set. |
min() | Trả về mục nhỏ dại nhất vào set. |
sorted() | Trả về list đã phân loại bắt đầu từ phần tử trong mix (không tự sắp xếp set đó) |
sum() | Trả về tổng số tất cả các bộ phận trong set. |
Frozenset trong Python
Frozenset là một lớp mới, có điểm sáng của một set, nhưng thành phần của nó không thể biến hóa được sau khi gán. Để dễ tưởng tượng thì tuple là list không bao giờ thay đổi còn frozenset là phối bất biến.
Các set có thể chuyển đổi được nhưng không thể băm (hash) được, cho nên vì vậy không thể thực hiện set để gia công key mang đến dictionary. Tuy vậy frozenset hoàn toàn có thể băm được nên rất có thể dùng như những key cho dictionary.
Frozenset hoàn toàn có thể tạo bởi hàm frozenset(). Kiểu tài liệu này cung ứng các thủ tục như copy(), difference(), intersection(), isdisjoint(), issubset(), issuperset(), symmetric_difference() cùng union(). Vì chưng không thể thay đổi nên cách làm add() hay remove() không sử dụng được bên trên frozenset.
7. Dictionary
Dictionary trong Python là một cấu trúc dữ liệu tương tự như một mảng phối hợp được tra cứu thấy ở những ngôn ngữ xây dựng khác.Một mảng hay list đánh chỉ mục các nhân tố theo vị trí. Nói giải pháp khác, một dictionary chỉ mục theo keys. Chúng hoàn toàn có thể ở dạng chuỗi.
Cách tạo thành dictionary vào Python
Trong Python, dictionary được tư tưởng trong vết ngoặc nhọn với mỗi bộ phận là một cặp theo mô hình key:value. Key và value này rất có thể là ngẫu nhiên kiểu dữ liệu nào. Chúng ta cũng có thể tạo dictionary bằng phương pháp sử dụng hàm dict() được tích thích hợp sẵn.
Ví dụ:
dict1 = #dictionary rỗng#dict2 là dictionary với các khóa nguyêndict2 = 1: "Quantrimang.com",2: "Công nghệ"#Tạo dictionary với khóa láo lếu hợpdict3 = "tên": "QTM", 1: <1, 3, 5>#Tạo dictionary bởi dict()dict4 = dict(1:"apple", 2:"ball")#Tạo dictionary trường đoản cú chuỗi với mỗi mục là 1 trong cặpdict5 = dict(<(1,"QTM"), (2,"CN")>)Khi triển khai kiểm tra kiểu dữ liệu của d ta được kết quả:
users = "firstname": "John", "lastname": "Smith", "age": 27print(users.keys())# prints<"lastname", "age", "firstname">
Truy cập thành phần của dictionary
Các hình dạng dữ liệu tàng trữ khác áp dụng index để truy cập vào những giá trị thì dictionary sử dụng các key. Key rất có thể được thực hiện trong cặp vệt ngoặc vuông hoặc thực hiện get().Sử dụng khóa nhằm trích xuất dữ liệu:
#khai báo và gán giá trị dict2dict2 = 1: "Quantrimang.com","quantrimang": "Công nghệ" print(type(dict2)) #in kiểu tài liệu của dict2#trích xuất tài liệu bằng khóa rồi inprint("dict2<1> = ", dict2<1>) print("dict2
dict2<1> = Quantrimang.comdict2
Để truy vấn các mục của một dictionary, hãy tham chiếu tới thương hiệu khóa (key) của nó. Key ở đây rất có thể được dùng phía bên trong các dấu ngoặc vuông. Quanh đó ra, xây dựng viên còn tồn tại một cách thức tên get() cũng giúp truy cập thành phần này xuất phát từ một dictionary.
# Ví dụ xây dựng Python minh họa giải pháp truy cập một trong những phần tử từ bỏ dictionary # chế tác một Dictionary
Dict = 1: "Geeks", "name": "For", 3: "Geeks" # truy cập phần tử bằng keyprint("Accessing a element using key:")print(Dict<"name">) # truy hỏi cập bộ phận bằng get()# Phương thứcprint("Accessing a element using get:")print(Dict.get(3))Kết quả:
Truy cập một trong những phần tử bằng key:For
Truy cập một trong những phần tử bằng get:Geeks
Thay đổi, thêm thành phần cho dictionary
Dictionary có thể thay đổi, nên rất có thể thêm thành phần mới hoặc biến hóa giá trị của các phần tử hiện có bằng phương pháp sử dụng toán tử gán. Ví như key đã có, giá chỉ trị sẽ được cập nhật, nếu là 1 trong cặp key: value bắt đầu thì sẽ tiến hành thêm thành thành phần mới.dict2 = 1: "Quantrimang.com","quantrimang": "Công nghệ"#cập nhật giá trịdict2<"quantrimang"> = "Quản trị mạng"#output: 1: "Quantrimang.com", "quantrimang": "Quản trị mạng"print(dict2)#thêm thành phần mớidict2<2> = "Python"#output: 1: "Quantrimang.com", "quantrimang": "Quản trị mạng", 2: "Python"print(dict2)
Xóa bộ phận từ dictionary
Bạn hoàn toàn có thể xóa bộ phận cụ thể của dictionary bằng cách sử dụng pop(), nó sẽ bộ phận có key đã đến và trả về quý giá của phần tử. Popitem() rất có thể xóa và trả về một trong những phần tử tùy ý bên dưới dạng (key, value). Tất cả các phần tử trong dictionary rất có thể bị xóa thuộc lúc bằng cách dùng clear(). Ngoại trừ ra, trường đoản cú khóa del cũng hoàn toàn có thể dùng nhằm xóa một phần tử hoặc toàn thể dictionary.# tạo nên dictionarybinh_phuong = 1:1, 2:4, 3:9, 4:16, 5:25# xóa bộ phận số 4# Output: 16print(binh_phuong.pop(4))# Output: 1: 1, 2: 4, 3: 9, 5: 25print(binh_phuong)# xóa phần tử cụ thểdel binh_phuong<2># output: 1: 1, 3: 9, 5: 25print(binh_phuong)# xóa phần tử bất kỳ# Output: (5, 25)print(binh_phuong.popitem())# Output: 1: 1, 3: 9print(binh_phuong)# xóa toàn bộ phần tửbinh_phuong.clear()# output: print(binh_phuong)# xóa dictionary binh_phuongdel binh_phuong# chế tạo ra lỗi nếu bỏ # sinh sống lệnh sau# print(squares)
Các cách tiến hành và hàm mang lại dictionary
Đây là đầy đủ phương thức thường dùng với dictionary:clear() | Xóa tất cả phần tử của dictionary. |
copy() | Trả về một bản sao shollow copy của dictionary. |
fromkeys(seq<,v>) | Trả về dictionary new với key từ seq với value bằng v (default là None). |
get(key<,d>) | Trả về quý giá của key, ví như key ko tồn tại, trả về d. (default là None). |
items() | Trả lại dạng hình xem bắt đầu của các bộ phận trong dictionary (key, value). |
keys() | Trả về đẳng cấp xem mới của những key trong dictionary. |
pop(key<,d>) | Xóa thành phần bằng key cùng trả về quý giá hoặc d giả dụ key không tìm thấy. Nếu như d ko được cấp, key ko tồn tại thì sẽ khởi tạo lỗi Key Error. |
popitem() | Xóa với trả về phần tử bất kỳ ở dạng (key, value). Sản xuất lỗi Key Error nếu dictionary rỗng. |
setdefault(key,<,d>) | Nếy key lâu dài trả về value của nó, nếu không thêm key cùng với value là d cùng trả về d (default là None). |
update( | Cập nhật dictionary với cặp key/value từ other, ghi đè lên các key đang có. |
values() | Trả về thứ hạng view mới của value trong dictionary. |
Các hàm tích vừa lòng như all(), any(), len(), cmp(), sorted(),... Thường xuyên được thực hiện với dictionary để triển khai những nhiệm vụ khác nhau.
Dictionary comprehension vào Python
Dictionary comprehension là cách đối chọi giản, rút gọn để chế tạo dictionary mới xuất phát từ một vòng lặp trong Python. Câu lệnh sẽ bao gồm một cặp biểu thức (key:value) cùng câu lệnh for, toàn bộ đặt trong vết . Dưới đây là ví dụ tạo nên dictionary với từng pahàn tử là một cặp số cùng lập phương của nó.
lap_phuong = x: x*x*x for x in range(6)# Output: 0: 0, 1: 1, 2: 8, 3: 27, 4: 64, 5: 125print(lap_phuong)Chương trình trên tương đương với
lap_phuong = for x in range(6):lap_phuong
lap_phuong_chan = x: x*x*x for x in range (10) if x%2==0# output: 0: 0, 2: 8, 4: 64, 6: 216, 8: 512print(lap_phuong_chan)
Kiểm tra và lặp qua thành phần trong dictionary
Bạn chỉ rất có thể kiểm tra key của bộ phận đã bao gồm trong dictionary hay chưa bằng cách dùng in, và thiết yếu làm điều ấy với value.lap_phuong = 0: 0, 1: 1, 2: 8, 3: 27, 4: 64, 5: 125#output: Trueprint (2 in lap_phuong)#output: Falseprint (9 in lap_phuong)#output: Falseprint (5 not in lap_phuong)Bạn rất có thể sử dụng vòng lặp for để lặp qua key của các phần tử trong dictionary.
lap_phuong = 0: 0, 1: 1, 2: 8, 3: 27, 4: 64, 5: 125for i in lap_phuongprint(lap_phuong)Chạy code trên, những giá trị tương ứng với từng key sẽ tiến hành in ra screen theo trang bị tự của key.
8. Thay đổi giữa những kiểu dữ liệu
Chúng ta tất cả thể thay đổi giữa những kiểu dữ liệu khác nhau bằng cách sử dụng hàm thay đổi kiểu không giống nhau như int() (kiểu số nguyên), float() số thập phân, str() chuỗi,...
Ví dụ:
Ví dụ:
int(18.6)18Chuyển thay đổi từ string sang trọng hoặc trái lại phải có các giá trị tương thích.
Bạn rất có thể thực hiện biến hóa chuỗi này quý phái chuỗi khác: