- [Người hướng dẫn] Nếu bạn mã hóa đường dẫn mà người khác không có quyền truy cập, họ không thể chạy mã của bạn, phải tìm kiếm trong mã của bạn và thay đổi đường dẫn theo cách thủ công và điều đó có thể rất khó chịu và không hiệu quả. Để tránh vấn đề này, bạn có thể sử dụng đường dẫn tương đối. Tôi sẽ xem qua một ví dụ để minh họa cách tránh mã hóa cứng các đường dẫn không thể truy cập bằng cách sử dụng các đường dẫn tương đối. Giả sử tôi đang làm việc với tập dữ liệu chứa thông tin về danh sách AirBnB ở Thành phố New York từ năm 2019. Bây giờ hãy xem công việc của tôi được lưu ở đâu. Tôi có một thư mục có tên là dự án chứa hai thư mục con có tên là mã và dữ liệu. Bên trong mã thư mục con, tôi có sổ ghi chép Jupyter chứa mã của tôi. Và bên trong dữ liệu thư mục con, tôi có tệp CSV chứa tập dữ liệu mà tôi đang làm việc. Bây giờ giả sử tôi chia sẻ thư mục dự án của mình với một đồng đội. Khi mở thư mục dự án, họ sẽ có thể mở mã thư mục con, sau đó họ có thể mở sổ ghi chép Jupiter này. Khi họ làm, nó sẽ trông như thế này. Chúng ta hãy nhìn vào tế bào này ở đây. Điều này được cho là để đọc tập dữ liệu và lưu nó dưới dạng khung dữ liệu gấu trúc. Tuy nhiên, đường dẫn tuyệt đối cho tập dữ liệu đã được mã hóa cứng tại đây. Lưu ý rằng đường dẫn tuyệt đối cho tệp là vị trí của tệp so với thư mục gốc. Vì vậy, đường dẫn tuyệt đối được viết ở đây mô tả nơi định vị tập dữ liệu AirBnB NYC 2019 trên hệ thống tệp của tôi và của riêng tôi. Điều đó có nghĩa là khi đồng đội của tôi chạy ô trên hệ thống của họ, họ sẽ gặp lỗi. Để tránh điều này, tôi có thể sử dụng một đường dẫn tương đối thay thế. Lưu ý rằng đường dẫn tương đối cho tệp là vị trí của tệp so với thư mục làm việc hiện tại. Xin nhắc rằng tôi hiện đang ở mã thư mục con và lưu ý rằng mã gốc của mã thư mục con là thư mục dự án. Trong ô mới này, trước tiên tôi sẽ viết ra đường dẫn tương đối cho bộ dữ liệu AirBnB NYC 2019 và lưu nó vào một biến có tên Airbnb_path. Dấu chấm tôi đã viết ở đây biểu thị thư mục gốc của thư mục hiện tại. Nói cách khác, thư mục dự án. And I wrote data here to signify the sub-directory data, which is where the file can be found. And I wrote Airbnb_NYC_2019. csv here, because that's the name of the file. Next, I'll read the dataset using Airbnb_path and save the dataset as a pandas data frame. The relative path written here describes where the dataset can be found relative to the current working directory, which is the directory named code. And my teammate has access to that directory, because I shared it with them. That means that they also have access to this relative path. So when they run the cell, there will be no errors. And when they run this next cell, they'll be able to see the first few rows of the dataset. There you go. Now you know how to use relative paths instead of hardcoding inaccessible paths. Keep this in mind when reading files in your code
Download the files the instructor uses to teach the course. Follow along and learn by watching, listening and practicingPractice while you learn with exercise files
Watch courses on your mobile device without an internet connection. Download courses using your iOS or Android LinkedIn Learning app Hi. Welcome. If you are learning Python, then this article is for you. You will find a thorough description of Python syntax and lots of code examples to guide you during your coding journey Are you ready? Let's begin. 🔅 💡 Tip. throughout this article, I will use color = "Blue"23 to indicate that this part of the syntax will be replaced by the element described by the text. For example, color = "Blue"24 means that this will be replaced by a variable when we write the code The most basic building-block of any programming language is the concept of a variable, a name and place in memory that we reserve for a value In Python, we use this syntax to create a variable and assign a value to this variable For example If the name of a variable has more than one word, then the Style Guide for Python Code recommends separating words with an underscore "as necessary to improve readability. " For example 💡 Mẹo. Style Guide for Python Code (PEP 8) có những gợi ý tuyệt vời mà bạn nên làm theo để viết mã Python rõ ràng Trước khi chúng tôi bắt đầu đi sâu vào các kiểu dữ liệu và cấu trúc dữ liệu mà bạn có thể sử dụng trong Python, hãy xem cách bạn có thể viết chương trình Python đầu tiên của mình Bạn chỉ cần gọi hàm color = "Blue"25 và viết color = "Blue"26 trong ngoặc đơn Bạn sẽ thấy thông báo này sau khi chạy chương trình 💡 Mẹo. Viết chương trình color = "Blue"26 là một truyền thống trong cộng đồng nhà phát triển. Hầu hết các nhà phát triển bắt đầu học cách viết mã bằng cách viết chương trình này Great. Bạn vừa viết chương trình Python đầu tiên của mình. Bây giờ, hãy bắt đầu tìm hiểu về các kiểu dữ liệu và cấu trúc dữ liệu tích hợp sẵn mà bạn có thể sử dụng trong Python Chúng tôi có một số kiểu dữ liệu cơ bản và cấu trúc dữ liệu tích hợp mà chúng tôi có thể làm việc với các chương trình của mình. Mỗi cái đều có ứng dụng riêng. Hãy xem chúng một cách chi tiết Đây là những kiểu số mà bạn có thể làm việc với Python Số nguyên là số không có phần thập phân. Bạn có thể kiểm tra xem một số có phải là số nguyên hay không bằng hàm color = "Blue"28. Nếu đầu ra là color = "Blue"29, thì số đó là một số nguyên For example Số float là số có số thập phân. Bạn có thể phát hiện chúng một cách trực quan bằng cách định vị dấu thập phân. Nếu chúng ta gọi color = "Blue"28 để kiểm tra kiểu dữ liệu của các giá trị này, chúng ta sẽ thấy đây là kết quả đầu ra Ở đây chúng tôi có một số ví dụ Số phức có phần thực và phần ảo kí hiệu là color = "Blue"31. Bạn có thể tạo các số phức bằng Python với color = "Blue"32. Đối số đầu tiên sẽ là phần thực và đối số thứ hai sẽ là phần ảo Đây là một số ví dụ Chuỗi cực kỳ hữu ích trong Python. Chúng chứa một chuỗi ký tự và chúng thường được sử dụng để biểu thị văn bản trong mã For example Chúng ta có thể sử dụng cả dấu nháy đơn color = "Blue"33 hoặc dấu nháy kép color = "Blue"34 để định nghĩa một chuỗi. Chúng đều hợp lệ và tương đương nhau, nhưng bạn nên chọn một trong số chúng và sử dụng nó một cách nhất quán trong suốt chương trình 💡 Mẹo. Đúng. Bạn đã sử dụng một chuỗi khi viết chương trình color = "Blue"26. Bất cứ khi nào bạn thấy một giá trị được bao quanh bởi dấu nháy đơn hoặc kép trong Python, thì đó là một chuỗi Các chuỗi có thể chứa bất kỳ ký tự nào mà chúng ta có thể nhập vào bàn phím, bao gồm số, ký hiệu và các ký tự đặc biệt khác For example 💡 Mẹo. Khoảng trắng cũng được tính là ký tự trong chuỗi Nếu chúng ta định nghĩa một chuỗi có dấu nháy kép color = "Blue"34, thì chúng ta có thể sử dụng dấu nháy đơn bên trong chuỗi. Ví dụ Nếu chúng ta định nghĩa một chuỗi có dấu nháy đơn color = "Blue"33, thì chúng ta có thể sử dụng dấu nháy kép bên trong chuỗi. Ví dụ Chúng ta có thể sử dụng các chỉ số để truy cập các ký tự của một chuỗi trong chương trình Python của mình. Chỉ mục là một số nguyên đại diện cho một vị trí cụ thể trong chuỗi. Chúng được liên kết với ký tự ở vị trí đó Đây là sơ đồ của chuỗi color = "Blue"38 💡 Mẹo. Các chỉ số bắt đầu từ color = "Blue"39 và chúng được tăng thêm bởi color = "Blue"40 cho mỗi ký tự ở bên phải For example Chúng tôi cũng có thể sử dụng các chỉ số tiêu cực để truy cập các ký tự này 💡 Mẹo. chúng tôi thường sử dụng color = "Blue"41 để truy cập ký tự cuối cùng của chuỗi Chúng tôi cũng có thể cần lấy một lát của chuỗi hoặc một tập hợp con các ký tự của nó. Chúng ta có thể làm như vậy với việc cắt chuỗi Đây là cú pháp chung color = "Blue"42 là chỉ mục của ký tự đầu tiên sẽ được đưa vào lát cắt. Theo mặc định, nó là color = "Blue"39 Chúng ta có thể chỉ định hai tham số để sử dụng giá trị mặc định của color = "Blue"45, đó là color = "Blue"40. Điều này sẽ bao gồm tất cả các ký tự giữa color = "Blue"42 và color = "Blue"44 (không bao gồm) For example 💡 Mẹo. Lưu ý rằng nếu giá trị của một tham số vượt ra ngoài phạm vi hợp lệ của các chỉ số, lát cắt vẫn sẽ được trình bày. Đây là cách những người tạo ra Python triển khai tính năng cắt chuỗi này Nếu chúng ta tùy chỉnh color = "Blue"45, chúng ta sẽ "nhảy" từ chỉ mục này sang chỉ mục tiếp theo theo giá trị này For example Chúng ta cũng có thể sử dụng bước phủ định để đi từ phải sang trái Và chúng ta có thể bỏ qua một tham số để sử dụng giá trị mặc định của nó. Chúng ta chỉ cần thêm dấu hai chấm tương ứng (_______0_______51) nếu chúng ta bỏ qua color = "Blue"42, color = "Blue"44 hoặc cả hai 💡 Mẹo. Ví dụ cuối cùng là một trong những cách phổ biến nhất để đảo ngược chuỗi Trong Trăn 3. 6 và các phiên bản gần đây hơn, chúng ta có thể sử dụng một loại chuỗi có tên f-string giúp chúng ta định dạng chuỗi dễ dàng hơn nhiều Để định nghĩa một f-string, chúng ta chỉ cần thêm một color = "Blue"54 trước dấu ngoặc đơn hoặc dấu ngoặc kép. Sau đó, trong chuỗi, chúng ta bao quanh các biến hoặc biểu thức bằng dấu ngoặc nhọn color = "Blue"55. Điều này thay thế giá trị của chúng trong chuỗi khi chúng ta chạy chương trình For example đầu ra là Ở đây chúng tôi có một ví dụ nơi chúng tôi tính toán giá trị của một biểu thức và thay thế kết quả trong chuỗi Các giá trị được thay thế trong đầu ra Chúng ta cũng có thể gọi các phương thức trong dấu ngoặc nhọn và giá trị trả về sẽ được thay thế trong chuỗi khi chúng ta chạy chương trình đầu ra là Các chuỗi có các phương thức, đại diện cho chức năng phổ biến đã được các nhà phát triển Python triển khai, vì vậy chúng ta có thể sử dụng nó trực tiếp trong các chương trình của mình. Chúng rất hữu ích để thực hiện các hoạt động thông thường Đây là cú pháp chung để gọi một phương thức chuỗi For example Để tìm hiểu thêm về các phương thức Python, tôi khuyên bạn nên đọc từ tài liệu Python 💡 Mẹo. Tất cả các phương thức chuỗi trả về bản sao của chuỗi. Họ không sửa đổi chuỗi vì chuỗi là bất biến trong Python Các giá trị Boolean là color = "Blue"56 và color = "Blue"57 trong Python. Chúng phải bắt đầu bằng một chữ cái viết hoa để được công nhận là giá trị boolean For example Nếu chúng ta viết chúng bằng chữ thường, chúng ta sẽ gặp lỗi Bây giờ chúng ta đã tìm hiểu các kiểu dữ liệu cơ bản trong Python, hãy bắt đầu tìm hiểu các cấu trúc dữ liệu tích hợp. Đầu tiên, chúng tôi có danh sách Để xác định danh sách, chúng tôi sử dụng dấu ngoặc vuông color = "Blue"58 với các phần tử được phân tách bằng dấu phẩy 💡 Mẹo. Bạn nên thêm khoảng trắng sau mỗi dấu phẩy để mã dễ đọc hơn Ví dụ: ở đây chúng tôi có các ví dụ về danh sách Danh sách có thể chứa giá trị của các loại dữ liệu khác nhau, vì vậy đây sẽ là danh sách hợp lệ trong Python Chúng ta cũng có thể gán một danh sách cho một biến Danh sách có thể chứa giá trị của bất kỳ loại dữ liệu nào, kể cả các danh sách khác. Các danh sách bên trong này được gọi là danh sách lồng nhau Trong ví dụ này, color = "Blue"59 và color = "Blue"60 là các danh sách lồng nhau Ở đây chúng tôi có các ví dụ hợp lệ khác Chúng ta có thể truy cập các danh sách lồng nhau bằng chỉ mục tương ứng của chúng Ví dụ, các danh sách lồng nhau có thể được sử dụng để biểu thị cấu trúc của một bảng trò chơi 2D đơn giản trong đó mỗi số có thể biểu thị một phần tử hoặc ô xếp khác nhau Chúng ta có thể sử dụng hàm color = "Blue"61 để lấy độ dài của danh sách (số lượng phần tử mà nó chứa) For example Chúng tôi có thể cập nhật giá trị tại một chỉ mục cụ thể bằng cú pháp này For example Chúng ta có thể thêm một giá trị mới vào cuối danh sách bằng phương thức color = "Blue"62 For example Chúng ta có thể xóa một giá trị khỏi danh sách bằng phương thức color = "Blue"63 For example 💡 Mẹo. Điều này sẽ chỉ loại bỏ lần xuất hiện đầu tiên của phần tử. Ví dụ: nếu chúng tôi cố xóa số 3 khỏi danh sách có hai số 3, số thứ hai sẽ không bị xóa Chúng tôi có thể lập chỉ mục một danh sách giống như chúng tôi lập chỉ mục các chuỗi, với các chỉ mục bắt đầu từ color = "Blue"39 Chúng tôi cũng có thể nhận được một phần của danh sách bằng cách sử dụng cùng một cú pháp mà chúng tôi đã sử dụng với các chuỗi và chúng tôi có thể bỏ qua các tham số để sử dụng các giá trị mặc định của chúng. Bây giờ, thay vì thêm các ký tự vào lát cắt, chúng tôi sẽ thêm các phần tử của danh sách For example Python cũng có các phương thức danh sách đã được triển khai để giúp chúng tôi thực hiện các thao tác danh sách phổ biến. Dưới đây là một số ví dụ về các phương pháp danh sách được sử dụng phổ biến nhất Để tìm hiểu thêm về các phương thức danh sách, tôi khuyên bạn nên đọc từ tài liệu Python Để xác định một bộ trong Python, chúng tôi sử dụng dấu ngoặc đơn color = "Blue"65 và phân tách các phần tử bằng dấu phẩy. Nên thêm khoảng trắng sau mỗi dấu phẩy để mã dễ đọc hơn Chúng ta có thể gán các bộ dữ liệu cho các biến Chúng ta có thể truy cập từng phần tử của một tuple với chỉ mục tương ứng của nó Chúng ta cũng có thể sử dụng các chỉ số âm Để tìm độ dài của một tuple, chúng ta sử dụng hàm color = "Blue"61, chuyển tuple làm đối số Bộ dữ liệu có thể chứa giá trị của bất kỳ loại dữ liệu nào, kể cả danh sách và các bộ dữ liệu khác. Các bộ dữ liệu bên trong này được gọi là các bộ dữ liệu lồng nhau Trong ví dụ này, chúng ta có một bộ dữ liệu lồng nhau color = "Blue"67 và một danh sách. Bạn có thể truy cập các cấu trúc dữ liệu lồng nhau này bằng chỉ mục tương ứng của chúng For example Chúng ta có thể cắt một bộ giống như chúng ta cắt danh sách và chuỗi. Nguyên tắc và quy tắc tương tự được áp dụng Đây là cú pháp chung For example Có hai phương thức Tuple tích hợp trong Python 💡 Mẹo. bộ dữ liệu là bất biến. Chúng không thể được sửa đổi, vì vậy chúng tôi không thể thêm, cập nhật hoặc xóa các phần tử khỏi bộ dữ liệu. Nếu chúng ta cần làm như vậy, thì chúng ta cần tạo một bản sao mới của bộ dữ liệu Trong Python, chúng tôi có một tính năng thực sự thú vị gọi là Chuyển nhượng Tuple. Với kiểu gán này ta có thể gán giá trị cho nhiều biến trên cùng một dòng Các giá trị được gán cho các biến tương ứng của chúng theo thứ tự xuất hiện. Ví dụ: trong color = "Blue"68, giá trị color = "Blue"40 được gán cho biến color = "Blue"70 và giá trị color = "Blue"71 được gán cho biến color = "Blue"72 For example 💡 Mẹo. Phép gán bộ thường được sử dụng để hoán đổi giá trị của hai biến Bây giờ hãy bắt đầu đi sâu vào từ điển. Cấu trúc dữ liệu tích hợp này cho phép chúng tôi tạo các cặp giá trị trong đó một giá trị được liên kết với một giá trị khác Để định nghĩa một từ điển trong Python, chúng tôi sử dụng dấu ngoặc nhọn color = "Blue"55 với các cặp khóa-giá trị được phân tách bằng dấu phẩy Khóa được phân tách khỏi giá trị bằng dấu hai chấm color = "Blue"51, như thế này Bạn có thể gán từ điển cho một biến Các khóa của từ điển phải thuộc loại dữ liệu bất biến. Ví dụ: chúng có thể là chuỗi, số hoặc bộ nhưng không phải là danh sách vì danh sách có thể thay đổi Các giá trị của một từ điển có thể thuộc bất kỳ loại dữ liệu nào, vì vậy chúng ta có thể gán các chuỗi, số, danh sách, bộ, bộ và thậm chí các từ điển khác làm giá trị. Ở đây chúng tôi có một số ví dụ Để lấy số lượng cặp khóa-giá trị, chúng ta sử dụng hàm color = "Blue"61 To get a value in a dictionary, we use its key with this syntax This expression will be replaced by the value that corresponds to the key For example The output is the value associated to color = "Blue"79 To update the value associated with an existing key, we use the same syntax but now we add an assignment operator and the value For example Now the dictionary is The keys of a dictionary have to be unique. To add a new key-value pair we use the same syntax that we use to update a value, but now the key has to be new For example Now the dictionary has a new key-value pair To delete a key-value pair, we use the color = "Blue"80 statement For example Now the dictionary is These are some examples of the most commonly used dictionary methods To learn more about dictionary methods, I recommend from the documentation Great. Now you know the syntax of the basic data types and built-in data structures in Python, so let's start diving into operators in Python. They are essential to perform operations and to form expressions These operators are 💡 Tip. The last two examples are curious, right? This operator behaves differently based on the data type of the operands When they are strings, this operator concatenates the strings and when they are Boolean values, it performs a particular operation In Python, color = "Blue"56 is equivalent to color = "Blue"40 and color = "Blue"57 is equivalent to color = "Blue"39. This is why the result is color = "Blue"85 💡 Tip. you can "multiply" a string by an integer to repeat the string a given number of times 💡 Tip. this operator returns a color = "Blue"86 as the result, even if the decimal part is color = "Blue"87 If you try to divide by color = "Blue"39, you will get a color = "Blue"89 This operator returns an integer if the operands are integers. If they are floats, the result will be a float with color = "Blue"87 as the decimal part because it truncates the decimal part These operators are Các toán tử so sánh này tạo các biểu thức đánh giá thành color = "Blue"56 hoặc color = "Blue"57. Ở đây chúng tôi có một số ví dụ Chúng ta cũng có thể sử dụng chúng để so sánh các chuỗi dựa trên thứ tự bảng chữ cái của chúng Chúng tôi thường sử dụng chúng để so sánh giá trị của hai hoặc nhiều biến 💡 Mẹo. lưu ý rằng toán tử so sánh là color = "Blue"95 trong khi toán tử gán là grades = [67, 100, 87, 56]00. Tác dụng của chúng khác nhau. color = "Blue"95 trả về color = "Blue"56 hoặc color = "Blue"57 trong khi grades = [67, 100, 87, 56]00 gán giá trị cho một biến Trong Python, chúng ta có thể sử dụng một thứ gọi là "chuỗi toán tử so sánh", trong đó chúng ta xâu chuỗi các toán tử so sánh để thực hiện nhiều phép so sánh chính xác hơnTải xuống các khóa học và học mọi lúc, mọi nơi
What we will cover
🔹 Variable Definitions in Python
🔸 Xin chào, Thế giới. Chương trình trong Python
🔹 Kiểu dữ liệu và cấu trúc dữ liệu tích hợp trong Python
Kiểu dữ liệu số trong Python. Số nguyên, số float và số phức
số nguyên
phao nổi
Tổ hợp
Chuỗi trong Python
Trích dẫn trong chuỗi
Lập chỉ mục chuỗi
cắt chuỗi
chuỗi f
Phương thức chuỗi
Boolean trong Python
Danh sách trong Python
Danh sách lồng nhau
Độ dài danh sách
Cập nhật một giá trị trong danh sách
Thêm một giá trị vào một danh sách
Xóa một Giá trị khỏi Danh sách
Lập chỉ mục danh sách
Danh sách cắt lát
Liệt kê các phương thức
Bộ dữ liệu trong Python
Lập chỉ mục Tuple
chiều dài tuple
Bộ dữ liệu lồng nhau
cắt lát
Phương thức Tuple
Phép gán Tuple
Từ điển trong Python
Độ dài từ điển
Lấy một giá trị trong từ điển
Update a Value in a Dictionary
Add a Key-Value Pair to a Dictionary
Delete a Key-Value Pair in a Dictionary
Dictionary Methods
🔸 Python Operators
Arithmetic Operators in Python
Addition. +
<class 'float'>2Subtraction. -
<class 'float'>3Multiplication. *
<class 'float'>4Exponentiation. **
<class 'float'>5Division. /
<class 'float'>6Integer Division. //
Modulo. %
<class 'float'>9Comparison Operators
Chuỗi toán tử so sánh
Ví dụ: kiểm tra này nếu color = "Blue"70 nhỏ hơn color = "Blue"72 và nếu color = "Blue"72 nhỏ hơn grades = [67, 100, 87, 56]08
age = 5603Ở đây chúng tôi có một số ví dụ
age = 5604Toán tử logic
Có ba toán tử logic trong Python. grades = [67, 100, 87, 56]09, grades = [67, 100, 87, 56]10 và grades = [67, 100, 87, 56]11. Mỗi toán tử này có bảng chân lý riêng và chúng rất cần thiết để làm việc với các điều kiện
Toán tử grades = [67, 100, 87, 56]09
age = 5605Toán tử grades = [67, 100, 87, 56]10
age = 5606Toán tử grades = [67, 100, 87, 56]11
age = 5607Các toán tử này được sử dụng để tạo các biểu thức phức tạp hơn kết hợp các toán tử và biến khác nhau
For example
age = 5608Assignment Operators
Toán tử gán dùng để gán giá trị cho biến
họ đang. _______6_______00, _______6_______16, _______6_______17, _______6_______18, _______6_______19, _______6_______20, _______6__21, _______6_______22
- Toán tử grades = [67, 100, 87, 56]00 gán giá trị cho biến
- Các toán tử khác thực hiện một thao tác với giá trị hiện tại của biến và giá trị mới và gán kết quả cho cùng một biến
For example
age = 5609💡 mẹo. các toán tử này thực hiện các thao tác theo bit trước khi gán kết quả cho biến. grades = [67, 100, 87, 56]24, grades = [67, 100, 87, 56]25, grades = [67, 100, 87, 56]26, grades = [67, 100, 87, 56]27, grades = [67, 100, 87, 56]28
Thành viên điều hành
Bạn có thể kiểm tra xem một phần tử có thuộc dãy hay không bằng các toán tử. grades = [67, 100, 87, 56]29 và grades = [67, 100, 87, 56]30. Kết quả sẽ là color = "Blue"56 hoặc color = "Blue"57
For example
age = 5610Chúng tôi thường sử dụng chúng với các biến lưu trữ các chuỗi, như trong ví dụ này
age = 5611🔹 Điều kiện trong Python
Bây giờ hãy xem cách chúng ta có thể viết điều kiện để làm cho một số phần nhất định trong mã của chúng ta chạy (hoặc không) dựa trên việc điều kiện là color = "Blue"56 hay color = "Blue"57
grades = [67, 100, 87, 56]35 câu lệnh trong Python
Đây là cú pháp của một câu lệnh cơ bản grades = [67, 100, 87, 56]35
age = 5612Nếu điều kiện là color = "Blue"56, mã sẽ chạy. Ngược lại, nếu là color = "Blue"57, mã sẽ không chạy
💡 Mẹo. có dấu hai chấm (color = "Blue"51) ở cuối dòng đầu tiên và mã được thụt vào. Điều này là cần thiết trong Python để làm cho mã thuộc về điều kiện
Ở đây chúng tôi có một số ví dụ
Điều kiện sai
age = 5613Điều kiện là grades = [67, 100, 87, 56]40 và mã là grades = [67, 100, 87, 56]41
Trong trường hợp này, điều kiện là color = "Blue"57, vì vậy không có đầu ra
Tình trạng thật
Ở đây chúng ta có một ví dụ khác. Bây giờ điều kiện là color = "Blue"56
age = 5614đầu ra là
age = 5615Mã sau câu điều kiện
Ở đây chúng tôi có một ví dụ với mã chạy sau khi hoàn thành điều kiện. Lưu ý rằng dòng cuối cùng không được thụt vào, điều đó có nghĩa là nó không thuộc điều kiện
age = 5616Trong ví dụ này, điều kiện grades = [67, 100, 87, 56]40 là color = "Blue"57, vì vậy câu lệnh in đầu tiên không chạy nhưng câu lệnh in cuối cùng lại chạy vì nó không phải là một phần của điều kiện, vì vậy kết quả là
age = 5617Tuy nhiên, nếu điều kiện là color = "Blue"56, như trong ví dụ này
age = 5618đầu ra sẽ là
age = 5619Ví dụ về câu điều kiện
Đây là một ví dụ khác về điều kiện
age = 5620Trong trường hợp này, đầu ra sẽ là
age = 5621Nhưng nếu chúng ta thay đổi giá trị của grades = [67, 100, 87, 56]47
age = 5622Sẽ không có đầu ra vì điều kiện sẽ là color = "Blue"57
grades = [67, 100, 87, 56]49 câu lệnh trong Python
Chúng ta có thể thêm một mệnh đề grades = [67, 100, 87, 56]50 vào câu điều kiện nếu chúng ta cần xác định điều gì sẽ xảy ra khi điều kiện là color = "Blue"57
Đây là cú pháp chung
age = 5623💡 Mẹo. lưu ý rằng hai khối mã được thụt lề (_______6_______35 và grades = [67, 100, 87, 56]50). Điều này rất cần thiết để Python có thể phân biệt giữa mã thuộc về chương trình chính và mã thuộc về điều kiện.
Hãy xem một ví dụ với mệnh đề grades = [67, 100, 87, 56]50
Tình trạng thật
age = 5624đầu ra là
age = 5619Khi điều kiện của mệnh đề grades = [67, 100, 87, 56]35 là color = "Blue"56, mệnh đề này chạy. Mệnh đề grades = [67, 100, 87, 56]50 không chạy
Điều kiện sai
Bây giờ mệnh đề grades = [67, 100, 87, 56]50 chạy vì điều kiện là color = "Blue"57
age = 5626Bây giờ đầu ra là
age = 5627grades = [67, 100, 87, 56]60 câu lệnh trong Python
Để tùy chỉnh các điều kiện của chúng tôi hơn nữa, chúng tôi có thể thêm một hoặc nhiều mệnh đề grades = [67, 100, 87, 56]61 để kiểm tra và xử lý nhiều điều kiện. Chỉ mã của điều kiện đầu tiên có giá trị là color = "Blue"56 mới chạy
💡 Mẹo. grades = [67, 100, 87, 56]61 phải được viết sau grades = [67, 100, 87, 56]35 và trước grades = [67, 100, 87, 56]50
Điều kiện đầu tiên Đúng
age = 5628Chúng tôi có hai điều kiện grades = [67, 100, 87, 56]66 và grades = [67, 100, 87, 56]67. Chỉ khối mã từ điều kiện đầu tiên là color = "Blue"56 từ trên xuống dưới mới được thực thi
Trong trường hợp này, đầu ra là
age = 5619Bởi vì điều kiện đầu tiên là color = "Blue"56. grades = [67, 100, 87, 56]66
Điều kiện thứ hai Đúng
Nếu điều kiện đầu tiên là color = "Blue"57, thì điều kiện thứ hai sẽ được kiểm tra
Trong ví dụ này, điều kiện đầu tiên grades = [67, 100, 87, 56]66 là color = "Blue"57 nhưng điều kiện thứ hai grades = [67, 100, 87, 56]67 là color = "Blue"56, vì vậy mã thuộc mệnh đề này sẽ chạy
age = 5630đầu ra là
age = 5631Tất cả các điều kiện là Sai
Nếu tất cả các điều kiện đều là color = "Blue"57, thì mệnh đề grades = [67, 100, 87, 56]50 sẽ chạy
age = 5632đầu ra sẽ là
age = 5627Nhiều mệnh đề Elif
Chúng ta có thể thêm bao nhiêu mệnh đề grades = [67, 100, 87, 56]61 nếu cần. Đây là một ví dụ về câu điều kiện với hai mệnh đề grades = [67, 100, 87, 56]61
age = 5634Mỗi điều kiện sẽ được kiểm tra và chỉ khối mã của điều kiện đầu tiên có giá trị là color = "Blue"56 sẽ chạy. Nếu không ai trong số họ là color = "Blue"56, mệnh đề grades = [67, 100, 87, 56]50 sẽ chạy
🔸 Đối với vòng lặp trong Python
Bây giờ bạn đã biết cách viết điều kiện trong Python, vậy hãy bắt đầu đi sâu vào các vòng lặp. Vòng lặp for là cấu trúc lập trình tuyệt vời mà bạn có thể sử dụng để lặp lại một khối mã theo một số lần cụ thể
Đây là cú pháp cơ bản để viết vòng lặp for trong Python
age = 5635Iterable có thể là một danh sách, tuple, từ điển, chuỗi, chuỗi được trả về bởi phạm vi, tệp hoặc bất kỳ loại iterable nào khác trong Python. Chúng ta sẽ bắt đầu với grades = [67, 100, 87, 56]83
Hàm grades = [67, 100, 87, 56]83 trong Python
Hàm này trả về một chuỗi các số nguyên mà chúng ta có thể sử dụng để xác định số lần lặp (lặp lại) của vòng lặp sẽ được hoàn thành. Vòng lặp sẽ hoàn thành một lần lặp trên mỗi số nguyên
💡 Mẹo. Mỗi số nguyên được gán cho một biến vòng lặp tại một thời điểm trên mỗi lần lặp
Đây là cú pháp chung để viết một vòng lặp for với grades = [67, 100, 87, 56]83
age = 5636As you can see, the range function has three parameters
- color = "Blue"42. where the sequence of integers will start. By default, it's color = "Blue"39
- color = "Blue"44. where the sequence of integers will stop (without including this value)
- color = "Blue"45. the value that will be added to each element to get the next element in the sequence. By default, it's color = "Blue"40
You can pass 1, 2, or 3 arguments to grades = [67, 100, 87, 56]83
- With 1 argument, the value is assigned to the color = "Blue"44 parameter and the default values for the other two parameters are used
- With 2 arguments, the values are assigned to the color = "Blue"42 and color = "Blue"44 parameters and the default value for color = "Blue"45 is used
- With 3 arguments, the values are assigned to the color = "Blue"42, color = "Blue"44, and color = "Blue"45 parameters (in order)
Here we have some examples with one parameter
age = 5637Output
age = 5638💡 Tip. the loop variable is updated automatically
age = 5639Output
age = 5640In the example below, we repeat a string as many times as indicated by the value of the loop variable
age = 5641Output
age = 5642We can also use for loops with built-in data structures such as lists
age = 5643Output
age = 5644💡 Tip. when you use grades = [67, 100, 87, 56]99, you get a sequence of numbers that goes from color = "Blue"39 up to my_list = [1, 2, 3, 4, 5]01. This represents the sequence of valid indices
These are some examples with two parameters
age = 5645Output
age = 5646Code
age = 5647Output
age = 5648Code
age = 5649Output
age = 5650Code
age = 5651Now the list is. my_list = [1, 2, 3, 4, 5]02
These are some examples with three parameters
age = 5652Output
age = 5653Code
age = 5654Output
age = 5655Code
age = 5656Output
age = 5657How to Iterate over Iterables in Python
We can iterate directly over iterables such as lists, tuples, dictionaries, strings, and files using for loops. We will get each one of their elements one at a time per iteration. This is very helpful to work with them directly
Let's see some examples
Iterate Over a String
If we iterate over a string, its characters will be assigned to the loop variable one by one (including spaces and symbols)
age = 5658We can also iterate over modified copies of the string by calling a string method where we specify the iterable in the for loop. This will assign the copy of the string as the iterable that will be used for the iterations, like this
age = 5659age = 5660Iterate Over Lists and Tuples
age = 5661đầu ra là
age = 5662Code
age = 5663Output
age = 5664Iterate Over the Keys, Values, and Key-Value Pairs of Dictionaries
We can iterate over the keys, values, and key-value pairs of a dictionary by calling specific dictionary methods. Let's see how
To iterate over the keys, we write
age = 5665We just write the name of the variable that stores the dictionary as the iterable
💡 Mẹo. you can also write my_list = [1, 2, 3, 4, 5]03 but writing the name of the variable directly is more concise and it works exactly the same
For example
age = 5666💡 Mẹo. bạn có thể gán bất kỳ tên hợp lệ nào cho biến vòng lặp
Để lặp lại các giá trị, chúng tôi sử dụng
age = 5667For example
age = 5668Để lặp lại các cặp khóa-giá trị, chúng tôi sử dụng
age = 5669💡 Mẹo. chúng tôi đang xác định hai biến vòng lặp vì chúng tôi muốn gán khóa và giá trị cho các biến mà chúng tôi có thể sử dụng trong vòng lặp
age = 5670Nếu chúng ta chỉ định nghĩa một biến vòng lặp, biến này sẽ chứa một bộ với cặp khóa-giá trị
age = 5671Phá vỡ và Tiếp tục trong Python
Bây giờ bạn đã biết cách lặp qua các chuỗi trong Python. Chúng tôi cũng có các câu lệnh điều khiển vòng lặp để tùy chỉnh những gì xảy ra khi vòng lặp chạy. my_list = [1, 2, 3, 4, 5]04 và my_list = [1, 2, 3, 4, 5]05
Tuyên bố phá vỡ
Câu lệnh my_list = [1, 2, 3, 4, 5]04 dùng để dừng vòng lặp ngay lập tức
Khi một câu lệnh my_list = [1, 2, 3, 4, 5]04 được tìm thấy, vòng lặp dừng lại và chương trình trở lại thực thi bình thường ngoài vòng lặp
Trong ví dụ bên dưới, chúng ta dừng vòng lặp khi tìm thấy phần tử chẵn
age = 5672Tuyên bố tiếp tục
Câu lệnh my_list = [1, 2, 3, 4, 5]05 được sử dụng để bỏ qua phần còn lại của lần lặp hiện tại
Khi nó được tìm thấy trong quá trình thực hiện vòng lặp, lần lặp hiện tại dừng lại và một lần lặp mới bắt đầu với giá trị được cập nhật của biến vòng lặp
Trong ví dụ bên dưới, chúng tôi bỏ qua bước lặp hiện tại nếu phần tử là số chẵn và chúng tôi chỉ in giá trị nếu phần tử là số lẻ
age = 5673Hàm zip() trong Python
my_list = [1, 2, 3, 4, 5]09 là một hàm tích hợp tuyệt vời mà chúng ta có thể sử dụng trong Python để lặp lại nhiều chuỗi cùng một lúc, lấy các phần tử tương ứng của chúng trong mỗi lần lặp
Chúng ta chỉ cần chuyển các chuỗi làm đối số cho hàm my_list = [1, 2, 3, 4, 5]09 và sử dụng kết quả này trong vòng lặp
For example
age = 5674Hàm liệt kê () trong Python
Bạn cũng có thể theo dõi bộ đếm trong khi vòng lặp chạy bằng hàm my_list = [1, 2, 3, 4, 5]11. Nó thường được sử dụng để lặp lại một chuỗi và lấy chỉ mục tương ứng
💡 Mẹo. Theo mặc định, bộ đếm bắt đầu từ color = "Blue"39
For example
age = 5675age = 5676Nếu bạn bắt đầu bộ đếm từ color = "Blue"39, bạn có thể sử dụng chỉ mục và giá trị hiện tại trong cùng một lần lặp để sửa đổi trình tự
age = 5677Bạn có thể bắt đầu bộ đếm từ một số khác bằng cách chuyển đối số thứ hai tới my_list = [1, 2, 3, 4, 5]14
age = 5678Mệnh đề khác
Vòng lặp for cũng có mệnh đề grades = [67, 100, 87, 56]50. Bạn có thể thêm mệnh đề này vào vòng lặp nếu bạn muốn chạy một khối mã cụ thể khi vòng lặp hoàn thành tất cả các lần lặp của nó mà không tìm thấy câu lệnh my_list = [1, 2, 3, 4, 5]04
💡 Mẹo. nếu tìm thấy my_list = [1, 2, 3, 4, 5]04, mệnh đề grades = [67, 100, 87, 56]50 không chạy và nếu không tìm thấy my_list = [1, 2, 3, 4, 5]04, mệnh đề grades = [67, 100, 87, 56]50 sẽ chạy
Trong ví dụ dưới đây, chúng tôi cố gắng tìm một phần tử lớn hơn 6 trong danh sách. Phần tử đó không được tìm thấy, vì vậy my_list = [1, 2, 3, 4, 5]04 không chạy và mệnh đề grades = [67, 100, 87, 56]50 chạy
age = 5679đầu ra là
age = 5680Tuy nhiên, nếu câu lệnh my_list = [1, 2, 3, 4, 5]04 chạy, mệnh đề grades = [67, 100, 87, 56]50 không chạy. Chúng ta có thể thấy điều này trong ví dụ dưới đây
age = 5681đầu ra là
age = 5682🔹 Vòng lặp While trong Python
Vòng lặp While tương tự như vòng lặp for ở chỗ chúng cho phép chúng ta lặp lại một khối mã. Sự khác biệt là các vòng lặp while chạy trong khi một điều kiện là color = "Blue"56
Trong vòng lặp while, chúng ta xác định điều kiện, không xác định số lần lặp. The loop stops when the condition is color = "Blue"57
This is the general syntax of a while loop
age = 5683💡 Mẹo. in while loops, you must update the variables that are part of the condition to make sure that the condition will eventually become color = "Blue"57
For example
age = 5684age = 5685age = 5686Break and Continue
We can also use my_list = [1, 2, 3, 4, 5]04 and my_list = [1, 2, 3, 4, 5]05 with while loops and they both work exactly the same
- my_list = [1, 2, 3, 4, 5]04 stops the while loop immediately
- my_list = [1, 2, 3, 4, 5]05 stops the current iteration and starts the next one
For example
age = 5687age = 5688The grades = [67, 100, 87, 56]50 Clause
We can also add an grades = [67, 100, 87, 56]50 clause to a while loop. If my_list = [1, 2, 3, 4, 5]04 is found, the grades = [67, 100, 87, 56]50 clause doesn't run but if the my_list = [1, 2, 3, 4, 5]04 statement is not found, the grades = [67, 100, 87, 56]50 clause runs
In the example below, the my_list = [1, 2, 3, 4, 5]04 statement is not found because none of the numbers are even before the condition becomes color = "Blue"57, so the grades = [67, 100, 87, 56]50 clause runs
age = 5689This is the output
age = 5690But in this version of the example, the my_list = [1, 2, 3, 4, 5]04 statement is found and the grades = [67, 100, 87, 56]50 clause doesn't run
age = 5691đầu ra là
age = 5692Infinite While Loops
When we write and work with while loops, we can have something called an "infinite loop. " If the condition is never color = "Blue"57, the loop will never stop without external intervention
This usually happens when the variables in the condition are not updated properly during the execution of the loop
💡 Tip. you must make the necessary updates to these variables to make sure that the condition will eventually evaluate to color = "Blue"57
For example
age = 5693💡 Tip. to stop this process, type my_list = [1, 2, 3, 4, 5]45. You should see a my_list = [1, 2, 3, 4, 5]46 message
🔸 Nested Loops in Python
We can write for loops within for loops and while loops within while loops. These inner loops are called nested loops
💡 Tip. the inner loop runs for each iteration of the outer loop
Nested For Loops in Python
age = 5694If we add print statements, we can see what is happening behind the scenes
age = 5695The inner loop completes two iterations per iteration of the outer loop. The loop variables are updated when a new iteration starts
This is another example
age = 5696Nested While Loops in Python
Here we have an example of nested while loops. In this case, we have to update the variables that are part of each condition to guarantee that the loops will stop
age = 5697💡 Tip. we can also have for loops within while loops and while loops within for loops
🔹 Functions in Python
In Python, we can define functions to make our code reusable, more readable, and organized. This is the basic syntax of a Python function
age = 5698💡 Tip. a function can have zero, one, or multiple parameters
Function with No Parameters in Python
A function with no parameters has an empty pair of parentheses after its name in the function definition. For example
age = 5699This is the output when we call the function
name = "Nora"00💡 Tip. You have to write an empty pair of parentheses after the name of the function to call it
Hàm với một tham số trong Python
A function with one or more parameters has a list of parameters surrounded by parentheses after its name in the function definition
name = "Nora"01When we call the function, we just need to pass one value as argument and that value will be replaced where we use the parameter in the function definition
name = "Nora"02Here we have another example – a function that prints a pattern made with asterisks. You have to specify how many rows you want to print
name = "Nora"03You can see the different outputs for different values of my_list = [1, 2, 3, 4, 5]47
name = "Nora"04Functions with Two or More Parameters in Python
To define two or more parameters, we just separate them with a comma
name = "Nora"05Now when we call the function, we must pass two arguments
name = "Nora"06We can adapt the function that we just saw with one parameter to work with two parameters and print a pattern with a customized character
name = "Nora"07You can see the output with the customized character is that we call the function passing the two arguments
name = "Nora"08How to Return a Value in Python
Awesome. Now you know how to define a function, so let's see how you can work with return statements
We will often need to return a value from a function. We can do this with the my_list = [1, 2, 3, 4, 5]48 statement in Python. We just need to write this in the function definition
name = "Nora"09💡 Tip. the function stops immediately when my_list = [1, 2, 3, 4, 5]48 is found and the value is returned
Here we have an example
name = "Nora"10Now we can call the function and assign the result to a variable because the result is returned by the function
name = "Nora"11We can also use my_list = [1, 2, 3, 4, 5]48 with a conditional to return a value based on whether a condition is color = "Blue"56 or color = "Blue"57
In this example, the function returns the first even element found in the sequence
name = "Nora"12If we call the function, we can see the expected results
name = "Nora"13name = "Nora"14💡 Tip. if a function doesn't have a my_list = [1, 2, 3, 4, 5]48 statement or doesn't find one during its execution, it returns my_list = [1, 2, 3, 4, 5]54 by default
The recommends using return statements consistently. It mentions that we should
Be consistent in return statements. Either all return statements in a function should return an expression, or none of them should. If any return statement returns an expression, any return statements where no value is returned should explicitly state this as return None, and an explicit return statement should be present at the end of the function (if reachable)
Default Arguments in Python
We can assign default arguments for the parameters of our function. To do this, we just need to write my_list = [1, 2, 3, 4, 5]55 in the list of parameters
💡 Tip. The mentions that we shouldn't "use spaces around the = sign when used to indicate a keyword argument. "
In this example, we assign the default value 5 to the parameter color = "Blue"72. If we omit this value when we call the function, the default value will be used
name = "Nora"15If we call the function without this argument, you can see the output
name = "Nora"16We confirm that the default argument 5 was used in the operation
But we can also assign a custom value for color = "Blue"72 by passing a second argument
name = "Nora"17💡 Tip. parameters with default arguments have to be defined at the end of the list of parameters. Else, you will see this error. my_list = [1, 2, 3, 4, 5]58
Ở đây chúng ta có một ví dụ khác với hàm mà chúng ta đã viết để in một mẫu. Chúng tôi gán giá trị mặc định my_list = [1, 2, 3, 4, 5]59 cho tham số my_list = [1, 2, 3, 4, 5]60
name = "Nora"18Bây giờ chúng tôi có tùy chọn sử dụng giá trị mặc định hoặc tùy chỉnh nó
name = "Nora"19🔸 Đệ quy trong Python
Một hàm đệ quy là một hàm gọi chính nó. Các hàm này có trường hợp cơ sở dừng quá trình đệ quy và trường hợp đệ quy tiếp tục quá trình đệ quy bằng cách thực hiện một lệnh gọi đệ quy khác
Ở đây chúng tôi có một số ví dụ trong Python
name = "Nora"20Hàm thừa số đệ quyname = "Nora"21Hàm Fibonacciname = "Nora"22Tìm lũy thừa theo cách đệ quy🔹 Xử lý ngoại lệ trong Python
Lỗi hoặc sự kiện không mong muốn xảy ra trong khi chương trình đang chạy được gọi là ngoại lệ. Nhờ các yếu tố mà chúng ta sẽ thấy ngay lập tức, chúng ta có thể tránh việc kết thúc chương trình đột ngột khi điều này xảy ra
Hãy xem các loại ngoại lệ trong Python và cách chúng ta có thể xử lý chúng
Các ngoại lệ phổ biến trong Python
Đây là danh sách các ngoại lệ phổ biến trong Python và lý do tại sao chúng xảy ra
- ZeroDivisionLỗi. tăng lên khi đối số thứ hai của phép chia hoặc phép toán modulo bằng 0
- Chỉ mụcLỗi. xuất hiện khi chúng tôi cố gắng sử dụng một chỉ mục không hợp lệ để truy cập một phần tử của chuỗi
- Lỗi chính. xuất hiện khi chúng tôi cố gắng truy cập một cặp khóa-giá trị không tồn tại vì khóa không có trong từ điển
- NameError. raised when we use a variable that has not been defined previously
- RecursionError. raised when the interpreter detects that the maximum recursion depth is exceeded. This usually occurs when the process never reaches the base case
In the example below, we will get a my_list = [1, 2, 3, 4, 5]61. The my_list = [1, 2, 3, 4, 5]62 function is implemented recursively but the argument passed to the recursive call is my_list = [1, 2, 3, 4, 5]63 instead of my_list = [1, 2, 3, 4, 5]64. Unless the value is already color = "Blue"39 or color = "Blue"40, the base case will not be reached because the argument is not being decremented, so the process will continue and we will get this error
name = "Nora"27💡 Tip. to learn more about these exceptions, I recommend reading this article from the documentation
my_list = [1, 2, 3, 4, 5]67 / my_list = [1, 2, 3, 4, 5]68 in Python
We can use try/except in Python to catch the exceptions when they occur and handle them appropriately. This way, the program can terminate appropriately or even recover from the exception
This is the basic syntax
name = "Nora"28For example, if we take user input to access an element in a list, the input might not be a valid index, so an exception could be raised
name = "Nora"29If we enter an invalid value like 15, the output will be
name = "Nora"30Because the my_list = [1, 2, 3, 4, 5]68 clause runs. However, if the value is valid, the code in my_list = [1, 2, 3, 4, 5]67 will run as expected
Here we have another example
name = "Nora"31đầu ra là
name = "Nora"32How to Catch a Specific Type of Exception in Python
Instead of catching and handling all possible exceptions that could occur in the my_list = [1, 2, 3, 4, 5]67 clause, we could catch and handle a specific type of exception. We just need to specify the type of the exception after the my_list = [1, 2, 3, 4, 5]68 keyword
name = "Nora"33For example
name = "Nora"34name = "Nora"35How to Assign a Name to the Exception Object in Python
We can specify a name for the exception object by assigning it to a variable that we can use in the my_list = [1, 2, 3, 4, 5]68 clause. This will let us access its description and attributes
We only need to add my_list = [1, 2, 3, 4, 5]74, like this
name = "Nora"36For example
name = "Nora"37This is the output if we enter my_list = [1, 2, 3, 4, 5]75 as the index
name = "Nora"38This is another example
name = "Nora"39This is the output if we enter the value color = "Blue"39 for color = "Blue"72
name = "Nora"40my_list = [1, 2, 3, 4, 5]67 / my_list = [1, 2, 3, 4, 5]68 / grades = [67, 100, 87, 56]50 in Python
We can add an grades = [67, 100, 87, 56]50 clause to this structure after my_list = [1, 2, 3, 4, 5]68 if we want to choose what happens when no exceptions occur during the execution of the my_list = [1, 2, 3, 4, 5]67 clause
name = "Nora"41For example
name = "Nora"42If we enter the values my_list = [1, 2, 3, 4, 5]84 and color = "Blue"39 for color = "Blue"70 and color = "Blue"72 respectively, the output is
name = "Nora"40But if both values are valid, for example my_list = [1, 2, 3, 4, 5]84 and my_list = [1, 2, 3, 4, 5]89 for color = "Blue"70 and color = "Blue"72 respectively, the grades = [67, 100, 87, 56]50 clause runs after my_list = [1, 2, 3, 4, 5]67 is completed and we see
name = "Nora"44my_list = [1, 2, 3, 4, 5]67 / my_list = [1, 2, 3, 4, 5]68 / grades = [67, 100, 87, 56]50 / my_list = [1, 2, 3, 4, 5]97 in Python
We can also add a my_list = [1, 2, 3, 4, 5]97 clause if we need to run code that should always run, even if an exception is raised in my_list = [1, 2, 3, 4, 5]67
For example
name = "Nora"45If both values are valid, the output is the result of the division and
name = "Nora"46And if an exception is raised because color = "Blue"72 is color = "Blue"39, we see
name = "Nora"47The my_list = [1, 2, 3, 4, 5]97 clause always runs
💡 Tip. this clause can be used, for example, to close files even if the code throws an exception
🔸 Object-Oriented Programming in Python
In Object-Oriented Programming (OOP), we define classes that act as blueprints to create objects in Python with attributes and methods (functionality associated with the objects)
This is a general syntax to define a class
name = "Nora"48💡 Tip. print("Hello, World!")03 refers to an instance of the class (an object created with the class blueprint)
As you can see, a class can have many different elements so let's analyze them in detail
Class Header
The first line of the class definition has the print("Hello, World!")04 keyword and the name of the class
name = "Nora"49name = "Nora"50name = "Nora"51💡 Tip. If the class inherits attributes and methods from another class, we will see the name of the class within parentheses
name = "Nora"52name = "Nora"53name = "Nora"54In Python, we write class name in Upper Camel Case (also known as Pascal Case), in which each word starts with an uppercase letter. For example. print("Hello, World!")05
print("Hello, World!")06 and instance attributes
We are going to use the class to create object in Python, just like we build real houses from blueprints
The objects will have attributes that we define in the class. Usually, we initialize these attributes in print("Hello, World!")06. This is a method that runs when we create an instance of the class
Đây là cú pháp chung
name = "Nora"55We specify as many parameters as needed to customize the values of the attributes of the object that will be created
Here is an example of a print("Hello, World!")08 class with this method
name = "Nora"56💡 Tip. notice the double leading and trailing underscore in the name print("Hello, World!")06
How to Create an Instance
To create an instance of print("Hello, World!")08, we need to specify the name and age of the dog instance to assign these values to the attributes
name = "Nora"57Great. Now we have our instance ready to be used in the program
Some classes will not require any arguments to create an instance. In that case, we just write empty parentheses. For example
name = "Nora"58To create an instance
name = "Nora"59💡 Tip. print("Hello, World!")03 is like a parameter that acts "behind the scenes", so even if you see it in the method definition, you shouldn't consider it when you pass the arguments
Default Arguments
We can also assign default values for the attributes and give the option to the user if they would like to customize the value
In this case, we would write print("Hello, World!")12 in the list of parameters
This is an example
name = "Nora"60Now we can create a print("Hello, World!")13 instance with the default value for the radius by omitting the value or customize it by passing a value
name = "Nora"61How to Get an Instance Attribute
To access an instance attribute, we use this syntax
name = "Nora"62For example
name = "Nora"63How to Update an Instance Attribute
To update an instance attribute, we use this syntax
name = "Nora"64For example
name = "Nora"65How to Remove an Instance Attribute
Để xóa một thuộc tính thể hiện, chúng tôi sử dụng cú pháp này
name = "Nora"66For example
name = "Nora"67How to Delete an Instance
Tương tự, chúng ta có thể xóa một thể hiện bằng cách sử dụng color = "Blue"80
name = "Nora"68Public vs. Non-Public Attributes in Python
Trong Python, chúng tôi không có công cụ sửa đổi quyền truy cập để hạn chế chức năng truy cập vào các thuộc tính cá thể, vì vậy chúng tôi dựa vào quy ước đặt tên để chỉ định điều này
Ví dụ: bằng cách thêm dấu gạch dưới ở đầu, chúng tôi có thể báo hiệu cho các nhà phát triển khác rằng một thuộc tính có nghĩa là không công khai
For example
name = "Nora"69Tài liệu Python đề cập
Chỉ sử dụng một dấu gạch dưới hàng đầu cho các phương thức không công khai và các biến thể hiện
Luôn quyết định xem các phương thức và biến thể hiện của một lớp (gọi chung là. "thuộc tính") phải công khai hoặc không công khai. Nếu nghi ngờ, hãy chọn không công khai;
Các thuộc tính không công khai là những thuộc tính không dành cho bên thứ ba sử dụng; . -
Tuy nhiên, như các tài liệu cũng đề cập đến
Chúng tôi không sử dụng thuật ngữ "riêng tư" ở đây, vì không có thuộc tính nào thực sự riêng tư trong Python (không có số lượng công việc không cần thiết nói chung). -
💡 Mẹo. về mặt kỹ thuật, chúng tôi vẫn có thể truy cập và sửa đổi thuộc tính nếu chúng tôi thêm dấu gạch dưới ở đầu vào tên của nó, nhưng chúng tôi không nên
Thuộc tính lớp trong Python
Thuộc tính lớp được chia sẻ bởi tất cả các phiên bản của lớp. Tất cả họ đều có quyền truy cập vào thuộc tính này và họ cũng sẽ bị ảnh hưởng bởi bất kỳ thay đổi nào được thực hiện đối với các thuộc tính này
name = "Nora"70💡 Mẹo. thông thường, chúng được viết trước phương thức print("Hello, World!")06
Cách lấy thuộc tính lớp
Để lấy giá trị của thuộc tính lớp, chúng tôi sử dụng cú pháp này
name = "Nora"71For example
name = "Nora"72💡 Mẹo. Bạn cũng có thể sử dụng cú pháp này trong lớp
Cách cập nhật thuộc tính lớp
Để cập nhật một thuộc tính lớp, chúng tôi sử dụng cú pháp này
name = "Nora"73For example
name = "Nora"74Cách xóa thuộc tính lớp
Chúng tôi sử dụng color = "Blue"80 để xóa một thuộc tính lớp. Ví dụ
name = "Nora"75Làm thế nào để xác định phương pháp
Các phương thức đại diện cho chức năng của các thể hiện của lớp
💡 Mẹo. Các phương thức của thể hiện có thể hoạt động với các thuộc tính của thể hiện đang gọi phương thức nếu chúng ta viết print("Hello, World!")17 trong định nghĩa phương thức
Đây là cú pháp cơ bản của một phương thức trong một lớp. Chúng thường nằm bên dưới print("Hello, World!")06
name = "Nora"76Chúng có thể có 0, 1 hoặc nhiều tham số nếu cần (giống như hàm. ) nhưng các phương thức thể hiện phải luôn có print("Hello, World!")03 làm tham số đầu tiên
Ví dụ, đây là một phương thức print("Hello, World!")20 không có tham số (ngoài print("Hello, World!")03)
name = "Nora"77Để gọi phương thức này, chúng tôi sử dụng cú pháp này
name = "Nora"78For example
name = "Nora"79Ở đây chúng ta có một lớp print("Hello, World!")22 với một phương thức print("Hello, World!")23 với một tham số
name = "Nora"80Để gọi phương thức
name = "Nora"81💡 Mẹo. để thêm nhiều tham số hơn, chỉ cần tách chúng bằng dấu phẩy. Nên thêm dấu cách sau dấu phẩy
Thuộc tính, Getters và Setters trong Python
Getters và setters là các phương thức mà chúng ta có thể xác định để lấy và đặt giá trị của một thuộc tính thể hiện tương ứng. Họ làm việc như những người trung gian để "bảo vệ" các thuộc tính khỏi những thay đổi trực tiếp
Trong Python, chúng tôi thường sử dụng các thuộc tính thay vì getters và setters. Hãy xem làm thế nào chúng ta có thể sử dụng chúng
Để xác định một thuộc tính, chúng ta viết một phương thức với cú pháp này
name = "Nora"82Phương thức này sẽ hoạt động như một getter, vì vậy nó sẽ được gọi khi chúng ta cố gắng truy cập giá trị của thuộc tính
Bây giờ, chúng ta cũng có thể muốn định nghĩa một setter
name = "Nora"83Và một người xóa để xóa thuộc tính
name = "Nora"84💡 Mẹo. bạn có thể viết bất kỳ mã nào bạn cần trong các phương thức này để lấy, đặt và xóa một thuộc tính. Nên giữ chúng càng đơn giản càng tốt
This is an example
name = "Nora"85Nếu chúng tôi thêm các câu lệnh in mô tả, chúng tôi có thể thấy rằng chúng được gọi khi chúng tôi thực hiện thao tác của chúng
name = "Nora"86🔹 Cách làm việc với tệp trong Python
Làm việc với các tệp là rất quan trọng để tạo các chương trình mạnh mẽ. Hãy xem cách bạn có thể làm điều này trong Python
Cách đọc tệp trong Python
Trong Python, nên sử dụng câu lệnh print("Hello, World!")24 để làm việc với tệp vì nó chỉ mở tệp khi chúng ta cần và nó tự động đóng tệp khi quá trình hoàn tất
Để đọc một tập tin, chúng tôi sử dụng cú pháp này
name = "Nora"87Chúng tôi cũng có thể chỉ định rằng chúng tôi muốn mở tệp ở chế độ đọc bằng một print("Hello, World!")25
name = "Nora"88Nhưng đây đã là chế độ mặc định để mở một tập tin, vì vậy chúng ta có thể bỏ qua nó như trong ví dụ đầu tiên
This is an example
name = "Nora"89hoặc
name = "Nora"90💡 Mẹo. đúng rồi. Chúng ta có thể lặp qua các dòng của tệp bằng vòng lặp for. Đường dẫn tệp có thể liên quan đến tập lệnh Python mà chúng tôi đang chạy hoặc nó có thể là đường dẫn tuyệt đối
Cách ghi vào tệp bằng Python
Có hai cách để ghi vào một tập tin. Bạn có thể thay thế toàn bộ nội dung của tệp trước khi thêm nội dung mới hoặc nối thêm vào nội dung hiện có
name = "Nora"91Để thay thế hoàn toàn nội dung, chúng tôi sử dụng chế độ print("Hello, World!")26, vì vậy chúng tôi chuyển chuỗi này làm đối số thứ hai cho print("Hello, World!")27. Chúng tôi gọi phương thức print("Hello, World!")28 trên đối tượng tệp truyền nội dung mà chúng tôi muốn viết dưới dạng đối số
For example
name = "Nora"92Khi bạn chạy chương trình, một tệp mới sẽ được tạo nếu nó chưa tồn tại trong đường dẫn mà chúng tôi đã chỉ định
Đây sẽ là nội dung của tập tin
name = "Nora"93Cách nối vào tệp trong Python
Tuy nhiên, nếu bạn muốn nối thêm nội dung, thì bạn cần sử dụng chế độ color = "Blue"79
name = "Nora"94For example
name = "Nora"95Thay đổi nhỏ này sẽ giữ nội dung hiện có của tệp và nó sẽ thêm nội dung mới vào cuối
Nếu chúng ta chạy lại chương trình, các chuỗi này sẽ được thêm vào cuối tệp
name = "Nora"96Cách xóa tệp trong Python
Để xóa một tệp có tập lệnh của chúng tôi, chúng tôi có thể sử dụng mô-đun print("Hello, World!")30. Bạn nên kiểm tra với một điều kiện nếu tệp tồn tại trước khi gọi hàm print("Hello, World!")31 từ mô-đun này
name = "Nora"97For example
name = "Nora"98Bạn có thể nhận thấy dòng đầu tiên có nội dung print("Hello, World!")32. Đây là một tuyên bố nhập khẩu. Hãy xem tại sao chúng lại hữu ích và bạn có thể làm việc với chúng như thế nào
🔸 Nhập câu lệnh trong Python
Sắp xếp mã của bạn thành nhiều tệp khi chương trình của bạn tăng kích thước và độ phức tạp là một phương pháp hay. Nhưng chúng ta cần tìm cách kết hợp các tệp này để làm cho chương trình hoạt động chính xác và đó chính xác là những gì câu lệnh nhập thực hiện
Bằng cách viết một câu lệnh nhập, chúng ta có thể nhập một mô-đun (một tệp chứa các định nghĩa và câu lệnh Python) vào một tệp khác
Đây là những lựa chọn thay thế khác nhau cho báo cáo nhập khẩu
Thay thế đầu tiên
name = "Nora"99For example
color = "Blue"00💡 Mẹo. print("Hello, World!")33 là một mô-đun Python tích hợp
Nếu chúng ta sử dụng câu lệnh nhập này, chúng ta sẽ cần thêm tên của mô-đun trước tên của hàm hoặc phần tử mà chúng ta đang đề cập đến trong mã của mình
color = "Blue"01Chúng tôi đề cập rõ ràng trong mã của mình mô-đun mà phần tử thuộc về
Phương án thứ hai
color = "Blue"02For example
color = "Blue"03Trong mã của chúng tôi, chúng tôi có thể sử dụng tên mới mà chúng tôi đã gán thay vì tên ban đầu của mô-đun
color = "Blue"04Phương án thứ ba
color = "Blue"05For example
color = "Blue"06Với câu lệnh nhập này, chúng ta có thể gọi hàm trực tiếp mà không cần chỉ định tên của mô-đun
color = "Blue"07Phương án thứ tư
color = "Blue"08For example
color = "Blue"09Với câu lệnh nhập này, chúng ta có thể gán tên mới cho phần tử được nhập từ mô-đun
color = "Blue"10Thay thế thứ năm
color = "Blue"11Câu lệnh này nhập tất cả các thành phần của mô-đun và bạn có thể tham khảo chúng trực tiếp bằng tên của chúng mà không cần chỉ định tên của mô-đun
For example
color = "Blue"12💡 Mẹo. loại câu lệnh nhập này có thể khiến chúng tôi khó biết phần tử nào thuộc về mô-đun nào, đặc biệt khi chúng tôi nhập phần tử từ nhiều mô-đun
Theo
Wildcard imports (from import *) should be avoided, as they make it unclear which names are present in the namespace, confusing both readers and many automated tools.
🔹 Hiểu danh sách và từ điển trong Python
Một tính năng thực sự hay của Python mà bạn nên biết là hiểu danh sách và từ điển. Đây chỉ là cách để tạo danh sách và từ điển gọn nhẹ hơn
Liệt kê mức độ hiểu trong Python
Cú pháp được sử dụng để xác định cách hiểu danh sách thường tuân theo một trong bốn mẫu sau
color = "Blue"13color = "Blue"14_______0_______15color = "Blue"16💡 Mẹo. bạn chỉ nên sử dụng chúng khi chúng không làm cho mã của bạn khó đọc và khó hiểu hơn
Ở đây chúng tôi có một số ví dụ
color = "Blue"17Liệt kê hiểu vs. Biểu thức trình tạo trong Python
Khả năng hiểu danh sách được xác định bằng dấu ngoặc vuông color = "Blue"58. Điều này khác với các biểu thức trình tạo, được xác định bằng dấu ngoặc đơn color = "Blue"65. Chúng trông giống nhau nhưng chúng khá khác nhau. Hãy xem tại sao
- Khả năng hiểu danh sách tạo ra toàn bộ chuỗi cùng một lúc và lưu trữ nó trong bộ nhớ
- Các biểu thức trình tạo mang lại từng phần tử một khi chúng được yêu cầu
Chúng ta có thể kiểm tra điều này với mô-đun print("Hello, World!")36. Trong ví dụ bên dưới, bạn có thể thấy kích thước của chúng trong bộ nhớ rất khác nhau
color = "Blue"18Chúng ta có thể sử dụng các biểu thức trình tạo để lặp lại trong vòng lặp for và lấy từng phần tử một. Nhưng nếu chúng ta cần lưu trữ các phần tử trong danh sách, thì chúng ta nên sử dụng khả năng hiểu danh sách
Hiểu từ điển trong Python
Bây giờ chúng ta hãy đi sâu vào hiểu từ điển. Cú pháp cơ bản mà chúng ta cần sử dụng để xác định cách hiểu từ điển là
color = "Blue"19_______0_______20Ở đây chúng tôi có một số ví dụ về hiểu từ điển
color = "Blue"21Đây là một ví dụ với điều kiện trong đó chúng tôi lấy một từ điển hiện có và tạo một từ điển mới chỉ với những học sinh đạt điểm đậu lớn hơn hoặc bằng 60
color = "Blue"22Tôi thực sự hy vọng bạn thích bài viết này và thấy nó hữu ích. Bây giờ bạn đã biết cách viết và làm việc với các thành phần quan trọng nhất của Python
⭐ Đăng ký kênh YouTube của tôi và theo dõi tôi trên Twitter để tìm thêm các mẹo và hướng dẫn viết mã. Hãy xem khóa học trực tuyến của tôi Bài tập Python cho người mới bắt đầu. Giải quyết hơn 100 thử thách viết mã
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
QUẢNG CÁO
Nhà phát triển, nhà văn kỹ thuật và người tạo nội dung @freeCodeCamp. Tôi chạy freeCodeCamp. org Kênh YouTube Español
Nếu bạn đọc đến đây, hãy tweet cho tác giả để cho họ thấy bạn quan tâm. Tweet một lời cảm ơn
Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu