1. Trang chủ
  2. » Luận Văn - Báo Cáo

tiểu luận bài tập nhóm môn cấu trúc dữ liệu và giải thuật đề tài tìm hiểu các kiểu dữ liệu chuẩn trong python

19 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

3print"Tích:", product‘key in dict’: Kiểm tra key có tồn tại trong dict hay không‘dict.getkey’: Lấy giá trị của key, nếu key không tồn tại trả về None‘dict.setdefaultkey, default’: Lấy g

Trang 1

KHOA THƯƠNG MẠI ĐIỆN TỬ

  

BÀI TẬP NHÓM

MÔN: CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT

Đề tài:

Tìm hiểu các kiểu dữ liệu chuẩn trong python

Lớp học phần : MIS3006_48K29.1

Hoàng Dương Thảo HàHoàng Thị Phương ĐôngNguyễn Thị NhaNguyễn Ngọc Tường VyNguyễn Quỳnh Thy

Thành phố Đà Nẵng, năm 2024

Trang 2

PHẦN 1 KIỂU DỮ LIỆU NONE 1

Trang 3

PHẦN 7 KIỂU DỮ LIỆU DANH SÁCH (LIST) 14

Trang 4

print("Biến x không có giá trị.")

PHẦN 2 KIỂU DỮ LIỆU LOGIC2.1 Từ khóa

print("x là True và y là False.")

Too long to read onyour phone? Save

to read later onyour computer

Save to a Studylist

Trang 5

PHẦN 3 KIỂU DỮ LIỆU SỐ (NUMERIC)3.1 Từ khóa

‘int’: Số nguyên (ví dụ: 1, 2, 3)‘float’: Số thực (ví dụ: 1.2, 3.14)‘complex’: Số phức (ví dụ: 1+2j, 3-4j)

3.2 Phép toán

Cộng (+): 1 + 2 = 3Trừ (-): 3 - 2 = 1Nhân (*): 2 * 3 = 6Chia (/): 6 / 2 = 3Lũy thừa (**): 2 ** 3 = 8

Chia lấy phần nguyên (//): 6 // 2 = 3Chia lấy phần dư (%): 6 % 2 = 0

3.3 Cách dùng

Biến số được gán bằng giá trị số: x = 1Sử dụng trong biểu thức toán học: y = x + 2So sánh số: x > y

3.4 Ví dụ

# Khai báo biến sốx = 10

y = 3.14# Phép toánsum = x + ydifference = x - yproduct = x * yquotient = x / y# In ra kết quảprint("Tổng:", sum)print("Hiệu:", difference)

Trang 6

3print("Tích:", product)

‘key in dict’: Kiểm tra key có tồn tại trong dict hay không

‘dict.get(key)’: Lấy giá trị của key, nếu key không tồn tại trả về None

‘dict.setdefault(key, default)’: Lấy giá trị của key, nếu key không tồn tại,thêm key mớivới giá trị mặc định

4.2 Cách dùng

Tạo từ điển: my_dict = {"name": "Bard", "age": 2}Truy cập giá trị: name = my_dict["name"]Thêm phần tử: my_dict["gender"] = "male"Xóa phần tử: del my_dict["age"]

person["job"] = "AI Assistant"# Xóa phần tử

del person["city"]# In ra kết quảprint(person)

Trang 7

PHẦN 5 KIỂU DỮ LIỆU TẬP HỢP (SET, FROZEN SET)5.1 Từ khóa

Là một collection không có thứ tự, không có chỉ mục Không cho phép chứa dữ liệutrùng lặp.

Set trong Python được khai báo với các dấu ngoặc nhọn {} Ví dụ:

setFruits = {"apple", "cherry", "banana"}print(setFruits)

5.2 Các phép toán, cách dùng và ví dụ

 Truy cập các phần tử của Set trong python

Không thể truy cập các phần tử trong một Set bằng cách sử dụng chỉ mục, vì Setkhông lưu trữ các phần tử theo thứ tự nhập ban đầu Có thể sử dụng vòng lặp for đểtruy cập các phần tử của một Set.

setFruits {"apple", "cherry", "banana"}=for in x setFruits:

print(x)-> apple

 Thêm item vào một set

sử dụng hàm add() để thêm một item vào một set:setFruits = {"apple", "cherry", "banana"}

-> {'banana', 'kiwi', 'apple', 'cherry'}

sử dụng hàm update() để thêm nhiều item vào một set:setFruits = {"apple", "cherry", "banana"}

setFruits.update(["orange", "mango", "grapes"])print(setFruits)

Trang 8

-> {'grapes', 'orange', 'mango', 'cherry', 'apple', 'banana'}

 Hàm len() được sử dụng để xem có bao nhiêu item trong một set:

setFruits {"apple", "cherry", "banana"}=

print(len(setFruits))-> 3

 Để xóa một phần tử trong một set, sử dụng hàm remove() hoặc discard()

setFruits {"apple", "cherry", "banana"}=

-> {'cherry', 'apple'}

setFruits {"apple", "cherry", "banana"}=

-> {'cherry', 'apple'}

- có thể sử dụng hàm pop(), để xóa một phần tử, nhưng phương thức này sẽ xóaphần tử cuối cùng Nhưng set không có thứ tự, vì vậy sẽ không biết mục nào bị xóasetFruits {"apple", "cherry", "banana"}=

x setFruits.pop()=

print(x)-> cherry

- Clear xóa tất cả phần tử trong 1 setsetFruits {"apple", "cherry", "banana"}=

setFruits.clear()print(setFruits)-> set()

- Lệnh del sẽ xóa một set hoàn toàn:

Trang 9

setFruits {"apple", "cherry", "banana"}=del setFruits

 Ví dụ

art_friends = {"Rolf", "Anne", "Jen"}science_friends = {"Jen", "Charlie"}

all_friends = art_friends.union(science_friends)print(all_friends) # Kết quả {'Rolf', 'Anne', 'Jen', 'Charlie'}

 Phép trừ: Hiệu của một tập A trừ đi một tập B cho kết quả là tất các phần tửthuộc A nhưng không thuộc B Sử dụng phương thức difference() để thực hiệnphép trừ hai tập hợp

 Ví dụ

art_friends = {"Rolf", "Anne", "Jen"}science_friends = {"Jen", "Charlie"}

art_but_not_science = art_friends.difference(science_friends)science_but_not_art = science_friends.difference(art_friends)print(art_but_not_science) # Kết quả {'Rolf', 'Anne'}print(science_but_not_art) # Kết quả {'Charlie'}

 Hiệu đối xứng của hai tập hợp: Hiệu đối xứng của hai tập A và B được kết quả là tập hợp các phần tử thuộc cả A và B nhưng không đồng thời thuộc cả tập A và B.

art_friends = {"Rolf", "Anne", "Jen"}science_friends = {"Jen", "Charlie"}

not_in_both_1 = art_friends.symmetric_difference(science_friends)

Trang 10

print(not_in_both_1) # Kết quả {'Rolf', 'Charlie', 'Anne'}

not_in_both_2 = science_friends.symmetric_difference(art_friends)print(not_in_both_2) # Kết quả {'Rolf', 'Anne', 'Charlie'}

 Phép giao: Phép giao hai tập hợp cho kết quả là các phần tử đồng thời thuộc cảhai tập hợp Trong Python sử dụng phương thức intersection() để thực hiệnphép giao

art_friends = {"Rolf", "Anne", "Jen"}science_friends = {"Jen", "Charlie"}

art_and_science = art_friends.intersection(science_friends)print(art_and_science) # Kết quả là {"Jen"}

5.2.1 Các phương thức xử lý Set trong Python

clear() Xóa tất cả các phần tử của một set

copy() Returns a copy of the set

difference() Trả về một set chứa các phần tử khác nhau của 2 hoặc nhiều set

difference_update() Xóa các phần tử của set này mà tồn tại trong set khác

discard() Xóa phần tử được chỉ định.

intersection() Trả về một set mà các phần tử của nó tồn tại trong

Trang 11

issubset() Trả về true nếu tất cả các phần tử trong một set tồn tại trong set2, ngược lại trả về false.

issuperset() Trả về true nếu tất cả các phần tử trong set2 tồn tại trong một set, ngược lại trả về false.

pop() Xóa phần tử cuối cùng của một set.

remove() Xóa phần tử được chỉ định.

symmetric_difference() Trả về một set mà chứa các phần tử của cả 2 set đã cho, sao cho các phần tử này tồn tại trong set này nhưng không tồn tại trong set kia.

symmetric_difference_update() Cập nhật set ban đầu bằng việc loại bỏ phần tử của cả 2 set đã cho, sao cho các phần tử này tồn tại trong set này nhưng không tồn tại trong set kia.

union() Trả về môt set mà được nối từ 2 set với nhau.

update() Nối set này với set khác.

Trang 12

5.2.2 Tập hợp (Frozen Set)

Python cung cấp một hàm tên là frozenset(), kết quả trả về là một tập hợp (Set) khôngthể thay đổi Khi đó, nếu thực hiện các phương thức add(), remove(), update()… sẽbáo lỗi.

“Đóng băng” tập hợp sẽ làm cho tập hợp đó giống như cấu trúc Tuple trong Python.friends = {"Rolf", "Anne", "Jen"}

frozen_friends = frozenset(friends)frozen_friends.add({"Jen", "Charlie"})

print(frozen_friends) # Kết quả lỗi: AttributeError: 'frozenset' object has no attribute 'add'

Đóng băng một tập hợp rất hữu ích trong trường hợp muốn tập hợp đó không thể thay đổi Ví dụ khi dùng một tập hợp làm key cho một từ điển (Dictionary), sẽ được giới thiệu trong phần tiếp theo.

A = {1, 2, 3}B = {'a', 'b', 'c'}

C = {x: 'foo', y: 'bar'} # Kết quả lỗi: TypeError: unhashable type: 'set'Tuy nhiên nếu đóng băng các tập hợp này, sẽ không có lỗi nào xảy ra.A = frozenset({1, 2, 3})

B = frozenset({'a', 'b', 'c'})C = {x: 'foo', y: 'bar'} # Không có lỗi

PHẦN 6 KIỂU DỮ LIỆU CHUỔI (STRING)6.1 Từ khóa

Là một trong các kiểu phổ biến nhất trong Python Chuỗi ký tự trong python được baoquanh bởi dấu ngoặc kép đơn hoặc dấu ngoặc kép Python coi các lệnh trích dẫn đơnvà kép là như nhau Ví dụ: 'Hello' tương đương với "Hello".

Hiển thị một chuỗi trong Python bằng print ()

print('Hello')

Trang 13

6.2 Các phép toán, cách dùng và ví dụ

Mô tả & cách thức hoạt động Ví dụ

+ Nối (concatenate) 2 string với nhau để tạo thành mộtstring mới.

"Hello"+"MCI" ==>"Hello MCI"* Tạo một string mới bằng cách nối (concatenate) nhiều lần

bản sao chép của một string.

"MCI"*2 ==>"MCIMCI"[] Truy cập và trả về ký tự tại vị trí cho bởi chỉ số x = "Hello"x[1] ==> "e"[ : ] Trả về một chuỗi con bao gồm các ký tự trong phạm vi

x = "Hello"x[1:4] ==>"ell"x[1: ] ==>"ello"in Trả về True nếu ký tự tồn tại trong string đã cho x = "Hello"

'H' in x ==>Truenot

Trả về True nếu ký tự không tồn tại trong string đã cho x = "Hello"'M' not in x==> Truer/R Chuỗi thô (Raw String) - Ngăn chặn ý nghĩa thực tế của

các ký tự thoát (Escape character) Cú pháp cho chuỗi thôgiống chuỗi thông thường ngoại trừ "toán tử chuỗi thô",chữ "r" đứng trước dấu ngoặc kép "R" có thể là chữthường (r) hoặc chữ hoa (R) và phải được đặt ngay trướcdấu trích dẫn đầu tiên.

print (r'\n\t')==> \n\tprint (R'\n\t')==> \n\t

Trang 14

Các hàm cơ bản xử lý String của python

 Hàm strip() loại bỏ bất kỳ khoảng trắng từ đầu hoặc cuối cùnga = " Hello World! "

print(a.strip()) # returns "Hello World!"-> Hello World!

- Hàm lower() trả về chuỗi chữ thường, ví dụ:a = "Hello World!"

print(a.lower()) # returns "hello world!"-> hello world!

- Hàm upper() trả về chuỗi chữ hoa, ví dụ:a = "Hello World!"

print(a.upper()) # returns "HELLO WORLD!"-> HELLO WORLD!

- Hàm replace() thay thế một chuỗi bằng một chuỗi khác, ví dụ:a = "Hello World!"

print(a.replace("l", "t"))-> Hetto Wortd!

- Hàm split() tách chuỗi thành các chuỗi con, ví dụ:a = "Hello, World!"

print(a.split(","))-> ['Hello', ' World!']

String Method - Phương thức chuỗi

Trang 15

capitalize() Viết hoa ký tự đầu tiên của chuỗi

casefold() Chuyển chuỗi thành chữ thường

center() Trả về một chuỗi mới, trong đó chuỗi ban đầu được cho vào trungtâm và hai bên đó là các fillchar sao cho tổng số ký tự của chuỗimới là width

count() Đếm xem chuỗi string này xuất hiện bao nhiêu lần trong chuỗistring hoặc chuỗi con của nó nếu bạn cung cấp các chỉ mục startvà end

encode() Trả về một phiên bản đã được mã hóa của chuỗi

endswith() Trả về kết quả là True nếu chuỗi kết thúc với một giá trị cụ thể

find() Tìm kiếm chuỗi với giá trị cụ thể và trả về vị trí mà nó được tìmthấy

format() Định dạng giá trị cụ thể của chuỗi

Định dạng giá trị cụ thể của chuỗi

index() Tìm kiếm chuỗi với giá trị cụ thể và trả về vị trí mà nó được tìmthấy

isalnum() Trả về kết quả là True nếu tất cả ký tự trong chuỗi là chữ và số

Trang 16

isalpha() Trả về kết quả là True nếu tất cả ký tự trong chuỗi là chữ cái

isdecima() Trả về kết quả là True nếu tất cả ký tự trong chuỗi là chữ số thậpphân

isdigit() Trả về kết quả là True nếu tất cả ký tự trong chuỗi là chữ số

isidentifier() Trả về kết quả là True nếu String là số nhận dạng

islower() Trả về kết quả là True nếu tất cả ký tự trong chuỗi là chữ thường

isnumeric() Trả về kết quả là True nếu tất cả ký tự trong chuỗi là số

PHẦN 7 KIỂU DỮ LIỆU DANH SÁCH (LIST)7.1 Từ khóa

List là một kiểu dữ liệu trong nhiều ngôn ngữ lập trình, cho phép lưu trữ một tập hợp các giá trị có thứ tự.

Trang 17

Cắt List (Slicing): Lấy một phần của List bằng cách sử dụng slicing.Ví dụ: sliced_list = my_list[1:4] # Lấy chỉ số từ 1 đến 3

Thay đổi giá trị phần tử: có thể thay đổi giá trị của một phần tử bằng cách sử dụng chỉsố.

print("3 có trong List.")

Độ dài của List: Sử dụng hàm len() để lấy độ dài của List.Ví dụ: length = len(my_list)

PHẦN 8 KIỂU DỮ LIỆU TUPLE8.1 Từ khóa

Tuple là một kiểu dữ liệu trong nhiều ngôn ngữ lập trình, giống như List, nhưng có sự khác biệt chính là Tuple là không thay đổi (immutable), nghĩa là sau khi tạo ra một Tuple, bạn không thể thay đổi nó bằng cách thêm, sửa, hoặc xóa các phần tử.

Trang 18

Ví dụ: mixed_tuple = (1, "hello", 3.14, True)

Unpacking Tuple: Unpacking là quá trình gán giá trị của Tuple cho nhiều biến cùng một lúc.

Ví dụ: a, b, c = my_tuple

Độ dài của Tuple: Sử dụng hàm len() để lấy độ dài của Tuple.Ví dụ: length = len(my_tuple)

Ngày đăng: 02/06/2024, 14:24

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w