Computer >> Máy Tính >  >> Lập trình >> Python

Tuyên bố chuyển đổi Python:Hướng dẫn cách thực hiện

Không giống như Java hoặc C #, Python không có câu lệnh switch tích hợp sẵn. Điều này có nghĩa là bạn không thể đánh giá một biểu thức switch mà không cần phải viết mã của riêng bạn bắt chước câu lệnh “switch… case”.

Trong hướng dẫn này, chúng ta thảo luận về cách viết một “switch… case” bằng Python và xem qua hai ví dụ về câu lệnh faux-switch để bạn có thể tìm hiểu cách viết một câu lệnh trong mã của mình.

Chuyển đổi tuyên bố:Một người làm mới

Câu lệnh switch cho phép bạn chọn một trong số các khối mã để chạy. Chúng là một cách đánh giá nhiều biểu thức trong một chương trình.

Câu lệnh switch hoạt động bằng cách đánh giá một câu lệnh switch và so sánh kết quả của câu lệnh đó với các giá trị trong câu lệnh “case”. Nếu tìm thấy khớp, khối mã tương ứng sẽ được chạy. Nếu không, sẽ không có gì xảy ra.

Theo tùy chọn, từ khóa "mặc định" được sử dụng để chạy một khối mã nếu không tìm thấy câu lệnh nào phù hợp với một biểu thức cụ thể.

Tuyên bố chuyển đổi Python:Trả lại các giá trị riêng lẻ

Hãy viết một chương trình chuyển đổi một giá trị số thành một ngày trong tuần.

Để bắt đầu, hãy yêu cầu người dùng chèn một số mà họ muốn chuyển đổi thành ngày viết:

 convert_to_day =int (input ("Chèn một ngày trong tuần:")) 

Chúng tôi chuyển đổi giá trị mà người dùng chèn vào chương trình của chúng tôi thành một số nguyên. Chúng ta sẽ thảo luận về lý do tại sao điều này lại cần thiết ở phần sau của hướng dẫn.

81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia một cuộc thi đào tạo. Kết hợp với bootcamp ngay hôm nay.

Sinh viên tốt nghiệp bootcamp trung bình đã dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.

Tiếp theo, chúng tôi xác định một từ điển. Từ điển này sẽ chứa tất cả các ngày trong tuần. Mỗi khóa sẽ lưu trữ một ngày dưới dạng số và mỗi giá trị sẽ lưu trữ một ngày được viết ra (tức là thứ Ba):

 days ={1:"Thứ Hai", 2:"Thứ Ba", 3:"Thứ Tư", 4:"Thứ Năm", 5:"Thứ Sáu", 6:"Thứ Bảy", 7:"Chủ Nhật"}  

Có bảy khóa và giá trị trong từ điển của chúng tôi. Khóa “1” đại diện cho “Thứ Hai” và cứ tiếp tục như vậy cho đến ngày cuối cùng của tuần.

Tiếp theo, chúng tôi sử dụng phương thức get () từ điển để truy cập mục trong từ điển này tương ứng với giá trị mà người dùng đã chèn:

 day_as_written =days.get (convert_to_day, "Không có ngày nào có giá trị số này.") print (day_as_written) 

Chúng tôi đã chuyển đổi giá trị mà người dùng chèn vào chương trình của chúng tôi thành một số nguyên để chúng tôi có thể sử dụng nó trong get() của chúng tôi tuyên bố. Nếu không có khóa nào bằng giá trị mà “convert_to_day” lưu trữ, mã của chúng tôi sẽ trả về “Không có ngày nào có giá trị số này”.

Nếu người dùng chèn giá trị “1”, mã của chúng tôi sẽ đánh giá:

 ngày [1] 

Thao tác này sẽ truy xuất giá trị được liên kết với khóa “1” trong danh sách của chúng tôi.

Hãy chạy mã của chúng tôi và xem điều gì sẽ xảy ra:

 Chèn một ngày trong tuần:1 ngày thứ hai 

Mã của chúng tôi chuyển đổi thành công số mà người dùng chèn thành một chuỗi. Hãy chạy mã của chúng tôi vào một ngày không tồn tại trong từ điển của chúng tôi:

 Chèn một ngày trong tuần:8 Không có ngày nào có giá trị số này. 

Mã của chúng tôi hoạt động ngay cả khi người dùng chèn một giá trị không hợp lệ.

Tuyên bố chuyển đổi Python:Gọi hàm

Chúng ta có thể sử dụng cú pháp này để gọi các hàm trong mã của chúng ta. Chúng tôi sẽ xây dựng một ứng dụng hiển thị thông tin về danh sách các giao dịch mua tại một cửa hàng bánh sandwich.

Đầu tiên, hãy xác định danh sách các giao dịch mua:

 lượt mua =[2,50, 2,50, 2,75, 3,90, 5,60, 2,40] 

Tiếp theo, xác định ba chức năng. Các hàm này sẽ tính toán:

  • Số lượng mua hàng trong danh sách của chúng tôi
  • Giá trị mua hàng trung bình
  • Lần mua hàng lớn nhất

Hãy xác định các chức năng sau:

 def number_of_purchases ():total =len (mua) print (tổng) def average_value ():average =sum (mua) / len (mua) print (trung bình) def large_purchase ():lớn nhất =max (mua) print (lớn nhất) 

Bây giờ chúng ta đã xác định các hàm này, hãy bắt đầu viết câu lệnh chuyển mạch giả của chúng ta. Giống như chúng ta đã làm trong ví dụ đầu tiên, chúng ta bắt đầu bằng cách yêu cầu người dùng chèn một giá trị. Giá trị mà người dùng chèn phải tương ứng với một trong các chức năng của chúng tôi.

 print ("[1] Hiển thị số lượng giao dịch mua được thực hiện hôm nay") print ("[2] Hiển thị giá trị trung bình của tất cả các giao dịch mua được thực hiện hôm nay") print ("[3] Hiển thị giao dịch mua lớn nhất được thực hiện hôm nay") to_run =int (input ("Bạn muốn làm gì?")) 

Mã của chúng tôi in ra ba thông báo. Mỗi một thông báo cho người dùng về một tùy chọn mà họ có thể thực hiện. Sau đó, mã của chúng tôi yêu cầu người dùng chèn một giá trị. Chúng tôi chuyển đổi giá trị này thành một số để chúng tôi có thể sử dụng nó sau này trong chương trình của mình.

Tiếp theo, xác định một từ điển ánh xạ các chức năng của chúng ta thành các số:

 options ={1:number_of_purchases, 2:average_value, 3:large_purchase} 

Giá trị “1” được ánh xạ tới hàm có tên “number_of_purchases”, giá trị “2” được ánh xạ tới hàm “average_value” và giá trị “3” được ánh xạ tới hàm “large_purchase”.

Tiếp theo, sử dụng get() phương pháp để chọn chức năng mà chương trình của chúng tôi sẽ chạy:

 function_to_execute =options.get (to_run) function_to_execute () 

Mã này truy xuất hàm từ từ điển của chúng tôi mà chúng tôi muốn thực thi. Chúng tôi chưa chỉ định giá trị thứ hai trong get() của chúng tôi vì chúng ta cần gọi một hàm để mã của chúng ta hoạt động. Điều này có nghĩa là nếu người dùng chèn một giá trị không hợp lệ, mã của chúng tôi sẽ trả về lỗi. Có nhiều cách để xử lý hành vi này nhưng làm như vậy nằm ngoài phạm vi của hướng dẫn này.

Hãy chạy mã của chúng tôi:

 [1] Hiển thị số lượng giao dịch mua được thực hiện hôm nay [2] Hiển thị giá trị trung bình của tất cả các giao dịch mua được thực hiện hôm nay [3] Hiển thị giao dịch mua lớn nhất được thực hiện hôm nayBạn muốn làm gì? 35,6 

Chúng tôi đã chọn tùy chọn 3 từ danh sách của chúng tôi. Mã của chúng tôi in ra thành công giao dịch mua lớn nhất được thực hiện vào một ngày cụ thể. Hãy thử chọn tùy chọn 2:

 [1] Hiển thị số lượng giao dịch mua được thực hiện hôm nay [2] Hiển thị giá trị trung bình của tất cả các giao dịch mua được thực hiện hôm nay [3] Hiển thị giao dịch mua lớn nhất được thực hiện hôm nayBạn muốn làm gì? 23,275 

Mã của chúng tôi trả về giá trị trung bình của các giao dịch mua trong danh sách của chúng tôi.

Kết luận

Mặc dù Python không có câu lệnh switch tích hợp, bạn có thể tạo một câu lệnh bằng cách sử dụng từ điển và get() phương pháp.

Câu lệnh switch rất hữu ích nếu bạn muốn đánh giá một biểu thức dựa trên nhiều kết quả tiềm năng.

Bạn có thể viết câu lệnh faux-switch lấy các giá trị từ từ điển tùy thuộc vào khóa bạn chỉ định. Bạn cũng có thể viết một câu lệnh chuyển đổi giả để truy xuất một hàm từ từ điển dựa trên một khóa cụ thể mà bạn tham chiếu.

Bây giờ, bạn đã sẵn sàng tạo các câu lệnh switch của riêng mình bằng ngôn ngữ lập trình Python như một lập trình viên chuyên nghiệp!