Các câu lệnh được giới thiệu trong chương này sẽ liên quan đến các bài kiểm tra hoặc điều kiện. Cú pháp khác cho các điều kiện sẽ được giới thiệu sau, nhưng bây giờ hãy xem xét các phép so sánh số học đơn giản dịch trực tiếp từ toán học sang Python. Hãy thử từng dòng riêng biệt trong Shell
2 7 x = 11 x > 10 2 * x 51 hoặc
'a' > 52. Đây là những giá trị Boolean duy nhất có thể [được đặt tên theo nhà toán học thế kỷ 19 George Boole]. Trong Python, tên Boolean được rút ngắn thành loại
'a' > 53. Đó là loại kết quả của các điều kiện hoặc phép thử đúng sai
Ghi chú
Các giá trị Boolean
'a' > 51 và
'a' > 52 không có dấu ngoặc kép xung quanh chúng. Cũng giống như
'a' > 56 là một chuỗi và
'a' > 57 không có dấu ngoặc kép thì không,
'a' > 58 là một chuỗi, không phải kiểu bool
3. 1. 2. Đơn giản 'a' > 5
9 câu lệnh
Chạy chương trình ví dụ này, vali. py. Hãy thử ít nhất hai lần, với đầu vào. 30 rồi 55. Như bạn thấy, bạn nhận được một kết quả bổ sung, tùy thuộc vào đầu vào. Mã chính là
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]
Hai dòng ở giữa là một câu lệnh
'a' > 59. Nó đọc khá giống tiếng Anh. Nếu đúng là trọng lượng lớn hơn 50 thì in ra câu lệnh tính thêm phí. Nếu không đúng trọng số lớn hơn 50 thì không làm phần thụt. bỏ qua việc in thêm phí hành lý. Trong bất kỳ trường hợp nào, khi bạn đã hoàn thành câu lệnh
'a' > 59 [dù nó có thực sự làm gì hay không], hãy chuyển sang câu lệnh tiếp theo không được thụt vào bên dưới câu lệnh
'a' > 59. Trong trường hợp này đó là câu lệnh in “Thank you”
Cú pháp Python chung cho một câu lệnh
'a' > 59 đơn giản là
'a' > 59 điều kiệndef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''5indentedStatementBlock
Nếu điều kiện là đúng, thì hãy thực hiện các câu lệnh thụt lề. Nếu điều kiện không đúng thì bỏ qua các câu lệnh thụt lề
Một đoạn khác làm ví dụ
if balance 59-
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 Báo cáo
Chạy chương trình ví dụ,
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. ''' if totalHours 59 đơn giản, xuất hiện ngay sau tiêu đề
'a' > 59 và được thực hiện khi điều kiện trong tiêu đề
'a' > 59 là đúng. Trong biểu mẫu
'a' > 59-
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9, theo sau nó là một dòng
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. ''' if totalHours 59-_______16_______9, chính xác một trong hai khối thụt lề có thể được thực thi
Một dòng cũng được hiển thị thụt vào bên cạnh, loại bỏ thụt lề, về việc tập thể dục. Vì nó được đánh dấu, nên nó không phải là một phần của câu lệnh if-else. Vì số lượng thụt đầu dòng của nó khớp với tiêu đề
'a' > 59, nên nó luôn được thực hiện trong luồng câu lệnh chuyển tiếp thông thường, sau câu lệnh
'a' > 59-
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 [bất kỳ khối nào được chọn]
Cú pháp chung của Python
'a' > 59-
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 là
'a' > 59 điều kiệnindentedStatementBlockForTrueCondition
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. ''' if totalHours >> 'is' in vals True >>> 'was' in vals False1Not equal≠>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False2Không được có khoảng cách giữa các ký tự thay thế bằng hai ký hiệu Python
Lưu ý rằng sự lựa chọn rõ ràng cho dấu bằng, một dấu bằng duy nhất, không được sử dụng để kiểm tra sự bằng nhau. Một dấu bằng thứ hai khó chịu là bắt buộc. Điều này là do dấu bằng duy nhất đã được sử dụng để gán trong Python, vì vậy nó không có sẵn cho các bài kiểm tra
Cảnh báo
Một lỗi phổ biến là chỉ sử dụng một dấu bằng khi bạn muốn kiểm tra sự bằng nhau và không thực hiện phép gán
Các bài kiểm tra về đẳng thức không thực hiện phép gán và chúng không yêu cầu một biến ở bên trái. Bất kỳ biểu thức nào cũng có thể được kiểm tra về đẳng thức hoặc bất đẳng thức [
>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False2]. Chúng không cần phải là số. Dự đoán kết quả và thử từng dòng trong Shellx = 5 x x == 5 x == 6 x x != 6 x = 6 6 == x 6 != x 'hi' == 'h' + 'i' 'HI' != 'hi' [1, 2] != [2, 1]Một kiểm tra bình đẳng không thực hiện một bài tập. Các chuỗi có phân biệt chữ hoa chữ thường. Thứ tự các vấn đề trong một danh sách
Thử trong Shell
'a' > 5Khi so sánh không có ý nghĩa, một ngoại lệ được gây ra.
Theo dõi cuộc thảo luận về tính không chính xác của số học float trong , xác nhận rằng Python không xem xét. 1 +. 2 bằng. 3. Viết một điều kiện đơn giản vào Shell để kiểm tra
Đây là một ví dụ khác. Trả tiền làm thêm giờ. Cho biết số giờ làm việc của một người trong tuần và tiền lương theo giờ thông thường, hãy tính tổng tiền lương trong tuần, có tính đến thời gian làm thêm giờ. Số giờ làm việc trên 40 là làm thêm giờ, được trả lương 1. gấp 5 lần mức bình thường. Đây là một vị trí tự nhiên cho một chức năng kèm theo tính toán
Đọc thiết lập cho chức năng
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''Bài toán chỉ rõ hai trường hợp. khi làm việc không quá 40 giờ hoặc khi làm việc hơn 40 giờ. Trong trường hợp làm việc hơn 40 giờ, sẽ thuận tiện khi giới thiệu giờ làm thêm giờ thay đổi. Bạn được khuyến khích suy nghĩ về một giải pháp trước khi tiếp tục và kiểm tra giải pháp của tôi
Bạn có thể thử chạy chương trình ví dụ hoàn chỉnh của tôi, tiền lương. py, cũng được hiển thị bên dưới. Thao tác định dạng ở cuối hàm chính sử dụng định dạng dấu phẩy động [] để hiển thị hai vị trí thập phân cho xu trong câu trả lời
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. ''' if totalHours >> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False4, không phải>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False5Dưới đây là phiên bản thay thế tương đương của phần thân của
>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False6, được sử dụng trong>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False7. Nó chỉ sử dụng một công thức tính toán chung và thiết lập các tham số cho công thức trong câu lệnh'a' > 59. Nhìn chung, có một số cách bạn có thể giải quyết cùng một vấn đềif totalHours >> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False9Ngoài ra còn có các toán tử Boolean được áp dụng cho các loại khác ngoài số. Một toán tử Boolean hữu ích là
>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False9, kiểm tra tư cách thành viên theo trình tự>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals FalseNó cũng có thể được sử dụng với
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]01, nhưweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]02, có nghĩa ngược lạiweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]0Nói chung hai phiên bản là
mục
>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False9 trình tựmục
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]02 trình tựPhát hiện sự cần thiết của câu lệnh
'a' > 59. Giống như với các chương trình lập kế hoạch cần các câu lệnh``for``, bạn muốn có thể dịch các mô tả vấn đề bằng tiếng Anh mà đương nhiên sẽ bao gồm các câu lệnh'a' > 59 hoặc'a' > 59-def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9. Một số từ hoặc cụm từ hoặc ý tưởng gợi ý việc sử dụng các câu này là gì? .3. 1. 4. 1. bài tập tốt nghiệp
Viết chương trình,
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]09, nhắc học sinh biết họ có bao nhiêu tín chỉ. In xem họ có đủ tín chỉ để tốt nghiệp hay không. [Tại Đại học Loyola Chicago, cần 120 tín chỉ để tốt nghiệp. ]3. 1. 4. 2. Bài tập đầu hoặc đuôi
Viết chương trình
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]10. Nó nên bao gồm một chức năngweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]11, mô phỏng một lần tung đồng xu. Nó in ngẫu nhiên hoặc làweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]12 hoặc làweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]13. Thực hiện điều này bằng cách chọn 0 hoặc 1 tùy ý vớiweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]14, và sử dụng câu lệnh'a' > 59-_______16_______9 để in raweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]12 khi kết quả là 0, và ngược lại làweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]13Trong chương trình chính của bạn có một vòng lặp lặp lại đơn giản gọi
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]11 10 lần để kiểm tra nó, vì vậy bạn tạo một chuỗi ngẫu nhiên gồm 10weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]12 vàweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]133. 1. 4. 3. Bài tập chức năng lạ
Lưu chương trình ví dụ
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]22 thànhweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]23 và hoàn thành các định nghĩa về hàmweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]24 vàweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]25 như được mô tả trong chuỗi tài liệu hàm trong chương trình. Trong định nghĩa hàmweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]24, hãy sử dụng câu lệnh'a' > 59-def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 [gợi ý]. Trong định nghĩa hàmweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]25, hãy sử dụng một vòng lặpweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]30, hàm phạm vi và hàm nhảyHàm
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]24 được giới thiệu để sử dụng trong và các hàm khác sau đó3. 1. 5. Nhiều bài kiểm tra và câu nói
'a' > 59-weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33Thường thì bạn muốn phân biệt giữa nhiều hơn hai trường hợp riêng biệt, nhưng điều kiện chỉ có hai kết quả có thể xảy ra,
'a' > 51 hoặc'a' > 52, vì vậy lựa chọn trực tiếp duy nhất là giữa hai lựa chọn. Như bất kỳ ai đã từng chơi “20 câu hỏi” đều biết, bạn có thể phân biệt nhiều trường hợp hơn bằng các câu hỏi tiếp theo. Nếu có nhiều hơn hai lựa chọn, một phép thử đơn lẻ có thể chỉ làm giảm các khả năng, nhưng các phép thử tiếp theo có thể làm giảm các khả năng ngày càng nhiều hơn. Vì hầu hết mọi loại câu lệnh đều có thể được đặt trong một khối câu lệnh thụt vào, nên một lựa chọn là một câu lệnh'a' > 59 tiếp theo. Chẳng hạn, hãy xem xét một hàm để chuyển đổi điểm số thành điểm chữ cái, 'A', 'B', 'C', 'D' hoặc 'F', trong đó các điểm cắt cho 'A', 'B', 'C' . Một cách để viết hàm sẽ là kiểm tra từng lớp một và giải quyết tất cả các khả năng còn lại bên trong mệnh đềdef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 tiếp theoweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]1Việc thụt đầu dòng tăng dần liên tục này với câu lệnh
'a' > 59 vì khốidef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 có thể gây khó chịu và mất tập trung. Một giải pháp thay thế ưu tiên trong tình huống này, để tránh tất cả sự thụt đầu dòng này, là kết hợp mỗi khốidef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 và'a' > 59 thành một khốiweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]2Cú pháp phức tạp nhất cho một câu lệnh
'a' > 59-weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33-def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 được chỉ ra một cách tổng quát bên dưới'a' > 59 điều kiện1def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''5indentedStatementBlockForTrueCondition1
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33 điều kiện2def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''5indentedStatementBlockForFirstTrueCondition2
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33 điều kiện3def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''5indentedStatementBlockForFirstTrueCondition3
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33 điều kiện4def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''5indentedStatementBlockForFirstTrueCondition4
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. ''' if totalHours 59, mỗi dòngweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33 và dòng cuối cùngdef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 đều thẳng hàng. Có thể có bất kỳ số lượngweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33 dòng nào, mỗi dòng theo sau là một khối thụt vào. [Ba tình cờ được minh họa ở trên. ] Với cấu trúc này, chính xác một trong các khối thụt lề được thực thi. Nó là khối tương ứng với điều kiện'a' > 51 đầu tiên, hoặc, nếu tất cả các điều kiện là'a' > 52, thì nó là khối sau dòng cuối cùngdef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9Cẩn thận với cơn co thắt kỳ lạ của Python. Đó là
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33, không phảiweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]63. Một chương trình kiểm tra chức năng letterGrade trong chương trình ví dụweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]64Thấy
Phương án thay thế cuối cùng cho câu lệnh
'a' > 59.'a' > 59-weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33-. không códef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9. Điều này có nghĩa là thay đổi cú pháp cho'a' > 59-weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33-def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 ở trên để phần cuối cùng củadef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. ''' if totalHours 59 không códef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9, ở chỗ không có khối thụt lề nào có thể được thực thi. Điều này xảy ra nếu không có điều kiện nào trong các bài kiểm tra là đúngVới một
def calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9 được bao gồm, chính xác một trong các khối thụt lề được thực thi. Không códef calcWeeklyWages[totalHours, hourlyWage]: '''Return the total weekly wages for a worker working totalHours, with a given regular hourlyWage. Include overtime for hours over 40. '''9, nhiều nhất một trong các khối thụt lề được thực thiweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]3Câu lệnh
'a' > 59-weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]33 này chỉ in một dòng nếu trọng lượng của vali có vấn đề3. 1. 5. 1. ký tập thể dục
Viết chương trình
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]79 để hỏi người dùng một số. In ra số đó thuộc danh mục nào.weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]80,weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]81, hoặcweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]823. 1. 5. 2. lớp tập thể dục
Ở chế độ Chờ, tải
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]64 và lưu dưới dạngweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]84 Sửa đổiweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]84 để nó có phiên bản tương đương của hàm letterGrade kiểm tra theo thứ tự ngược lại, đầu tiên là F, sau đó là D, C,. Gợi ý. Bạn cần làm bao nhiêu xét nghiệm?Đảm bảo chạy phiên bản mới của bạn và thử nghiệm với các đầu vào khác nhau để kiểm tra tất cả các đường dẫn khác nhau thông qua chương trình. Hãy cẩn thận để kiểm tra xung quanh các điểm giới hạn. điểm 79 là gì. 6 ngụ ý?
3. 1. 5. 3. tiền lương tập thể dục
* Sửa đổi ví dụ về
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]86 hoặc>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False7 để tạo một chương trìnhweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]88 giả định rằng mọi người được trả gấp đôi thời gian cho số giờ trên 60. Do đó, họ được trả nhiều nhất là 20 giờ làm thêm vào lúc 1. gấp 5 lần mức bình thường. Ví dụ: một người làm việc 65 giờ với mức lương thông thường là 10 đô la một giờ sẽ làm việc ở mức 10 đô la một giờ trong 40 giờ, lúc 1. 5 * $10 cho 20 giờ làm thêm giờ và 2 * $10 cho 5 giờ làm gấp đôi, tổng cộng là10*40 + 1. 5*10*20 + 2*10*5 = $800
Bạn có thể thấy
>>> vals = ['this', 'is', 'it] >>> 'is' in vals True >>> 'was' in vals False7 dễ thích nghi hơnweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]86Đảm bảo kiểm tra tất cả các đường dẫn thông qua chương trình. Chương trình của bạn có thể là một bản sửa đổi của chương trình mà một số lựa chọn đã hoạt động trước đó, nhưng khi bạn thay đổi mọi thứ, hãy kiểm tra lại tất cả các trường hợp. Những thay đổi có thể làm rối tung những thứ đã hoạt động trước đây
3. 1. 6. Nesting Control-Flow Statements
Sức mạnh của một ngôn ngữ như Python phần lớn đến từ nhiều cách kết hợp các câu lệnh cơ bản. Đặc biệt, các câu lệnh
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]30 và'a' > 59 có thể được lồng vào bên trong các khối thụt lề của nhau. Ví dụ: giả sử bạn chỉ muốn in số dươngcác số từ một danh sách các số tùy ý trong một hàm có tiêu đề sau. Đọc các mảnh cho bây giờ
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]4Ví dụ: giả sử
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]93 làweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]94. Bạn muốn xử lý một danh sách, do đó gợi ý một vòng lặpweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]30 mỗi vòng,weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]5nhưng một vòng lặp
weight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]30-mỗi chạy cùng một nội dung mã cho từng phần tử của danh sách và chúng tôi chỉ muốnweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]6cho một số người trong số họ. Điều đó có vẻ như là một trở ngại lớn, nhưng hãy suy nghĩ kỹ hơn về những gì cần phải xảy ra một cách cụ thể. Là một con người, người có đôi mắt tinh tường, bạn sẽ ngay lập tức bị thu hút bởi những con số thực sự chính xác, 3, 2 và 7, nhưng rõ ràng một chiếc máy tính làm việc này một cách có hệ thống sẽ phải kiểm tra từng con số. Trên thực tế, cần có một hành động nhất quán. Mỗi số phải được kiểm tra để xem nó có nên được in không. Điều này gợi ý một tuyên bố
'a' > 59, với điều kiệnweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]98. Hãy thử tải vào Idle và chạy chương trình ví dụweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]99, có mã được hiển thị bên dưới. Nó kết thúc bằng một dòng kiểm tra chức năngweight = float[input["How many pounds does your suitcase weigh? "]] if weight > 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]7Ý tưởng lồng các câu lệnh
'a' > 59 này mở rộng rất nhiều khả năng với các vòng lặp. Giờ đây, những việc khác nhau có thể được thực hiện vào những thời điểm khác nhau trong các vòng lặp, miễn là có một thử nghiệm nhất quán để cho phép lựa chọn giữa các phương án. Ngay sau đó, các vòng lặpif balance 59 được lồng bên trong chúng.Phần còn lại của phần này đề cập đến các ví dụ đồ họa
Chạy chương trình ví dụ
if balance 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]8Các tham số cho biết số lượng hình dạng di chuyển trong mỗi bước hoạt ảnh. Bạn có thể thử các giá trị khác trong Shell, tốt nhất là với cường độ nhỏ hơn 10
Đối với phần còn lại của mô tả về ví dụ này, hãy đọc các đoạn văn bản được trích xuất
Các hoạt ảnh trước đó hoàn toàn được viết theo kịch bản, cho biết chính xác có bao nhiêu chuyển động theo hướng nào, nhưng trong trường hợp này, hướng chuyển động thay đổi theo mỗi lần nảy. Chương trình có một đối tượng đồ họa
if balance 50: print["There is a $25 charge for luggage that heavy."] print["Thank you for your business."]9nhưng trong trường hợp này, dx và dy phải thay đổi khi quả bóng đến một đường biên. Chẳng hạn, hãy tưởng tượng quả bóng đi về phía bên trái khi nó đang di chuyển sang trái và lên trên. Cú nảy rõ ràng làm thay đổi phần nằm ngang của chuyển động, trên thực tế là đảo ngược nó, nhưng quả bóng vẫn tiếp tục bay lên. Sự đảo ngược của phần nằm ngang của chuyển động có nghĩa là sự dịch chuyển ngang thay đổi hướng và do đó dấu hiệu của nó
if balance