SlideShare a Scribd company logo
Điều khiển luồng
Th.S Trần Đức Lợi
Pythonvietnam.info
Ôn tập bài cũ
• Ôn tập git
– Đồng bộ
– Add/rm cùng lúc
• Chữa bài python-calculator
• Chữa bài tập về nhà python-calculator-with-
fibonacci
PythonBeginnerClass @loitd
#pythonvietnam.info
Mục đích bài học
• Tìm hiểu về điều khiển luồng trong python với
các câu lệnh if-else, while, for, …
• Cấu trúc try-catch
PythonBeginnerClass @loitd
#pythonvietnam.info
Điều khiển rẽ nhánh
• Đặt vấn đề: Viết thuật toán và code chương
trình python18+:
– Chào mừng người dùng
– Hỏi năm sinh
– Nếu người dùng nhỏ hơn 18 tuổi thì thông báo
không đủ tuổi
– Nếu đủ hoặc hơn 18 tuổi thì thông báo chào mừng
PythonBeginnerClass @loitd
#pythonvietnam.info
Điều khiển rẽ nhánh if
• If a == b:
• Print “”
• Else:
• Print “”
• Print “finished.”
• <, <=, >, >=, !=
PythonBeginnerClass @loitd
#pythonvietnam.info
Điều khiển rẽ nhánh if
• Biểu thức boolean dùng để điều khiển rẽ
nhánh
• Yêu cầu trả về giá trị True/False
• Các biểu thức điều kiện chỉ đọc giá trị các biến
chứ không thay đổi giá trị của biến
PythonBeginnerClass @loitd
#pythonvietnam.info
Điều khiển rẽ nhánh đa quyết định
• Đặt vấn đề: Viết thuật toán và code chương
trình python18++:
– Chào mừng người dùng
– Hỏi năm sinh
– Nếu người dùng nhỏ hơn 16 tuổi thì thông báo
không đủ tuổi
– Nếu đủ hoặc hơn 18 tuổi thì thông báo chào mừng
– Nếu từ 16-18 tuổi thì thông báo nên cân nhắc
PythonBeginnerClass @loitd
#pythonvietnam.info
Điều khiển rẽ nhánh if
• If a == b:
• Print «»
• Elif b == c:
• Print «»
• Else:
• Print «»
PythonBeginnerClass @loitd
#pythonvietnam.info
Bài tập
• Bài đoán số: hãy nhận dữ liệu từ người dùng
và so sánh với bình phương của số đó cũng do
người dùng nhập vào xem có bằng nhau
không? Nếu không thì đưa ra gợi ý quá cao
hoặc quá thấp.»
PythonBeginnerClass @loitd
#pythonvietnam.info
Switch
• Hãy sử dụng if – elif – else hoặc sử dụng
dictionary
• Không có câu lệnh kiểu này trong python
PythonBeginnerClass @loitd
#pythonvietnam.info
Vòng lặp While
• While a == b:
• Print «»
• Else:
• Print «the loop is ended»
• Print «finished.»
• Hãy sử dụng vòng while để thực hiện bài toán
đoán số liên tục cho đến khi bấm phím «q»
PythonBeginnerClass @loitd
#pythonvietnam.info
Vòng lặp for
• For i in range( 1,5):
• Print «»
• Else:
• Print «»
• Hãy sử dụng vòng for để thực hiện bài toán
đoán số liên tục cho đến khi bấm phím «q»
PythonBeginnerClass @loitd
#pythonvietnam.info
Câu lệnh break
• Thoát khỏi vòng lặp bằng câu lệnh break
• Hãy sử dụng câu lệnh break để thoát khỏi
chương trình khi người dùng nhấn «q»
PythonBeginnerClass @loitd
#pythonvietnam.info
Lệnh continue
• Bỏ qua một số câu lệnh trong vòng loop bằng
lệnh continue
• Các dòng lệnh trong vòng loop và sau câu
continue sẽ bị bỏ qua, không thực hiện mà
chuyển sang vòng loop tiếp theo luôn
PythonBeginnerClass @loitd
#pythonvietnam.info
Lệnh continue
• Sử dụng câu lệnh continue để thực hiện thêm
chức năng nếu người dùng nhấn «x» thì thông
báo bạn đã hủy lần đoán này, và tự động sinh
ra số mới.
PythonBeginnerClass @loitd
#pythonvietnam.info
Exception
• Exception hay ngoại lệ xảy ra theo một tình
huống nào đó trong một chương trình.
• Ví dụ:
• - đọc file nhưng file không tồn tại
• - delete file khi đang sử dụng
• ...
• và từ đây sinh ra khái niệm bắt ngoại lệ.
PythonBeginnerClass @loitd
#pythonvietnam.info
Exception
• Nên bao quanh các đoạn code “nguy hiểm”
bằng đoạn try…except
• Trong đoạn này, nếu try block được thực thi
thì except block sẽ được bỏ qua và ngược lại
• Bài pythoncalculator
PythonBeginnerClass @loitd
#pythonvietnam.info
Exception
• try:
• f = open('x')
• except:
• print 'Exception occured'
• print 'prog will now exit'
PythonBeginnerClass @loitd
#pythonvietnam.info
Exception
• try:
• f = open('x')
• except IOError:
• print 'catched'
• except:
• print 'x'
• print 'prog will now exit'
PythonBeginnerClass @loitd
#pythonvietnam.info
Cấu trúc try-catch
• d = int(raw_input("Nhap gioi han cua day
fibonacci: "))
• Try:
• Print «»
• Except Exception, e:
• Print «»
PythonBeginnerClass @loitd
#pythonvietnam.info
Raise Exception
• Exception có sẵn của python
• try:
• raise IOError()
• except IOError, e:
• print e
• except:
• print 'x'
PythonBeginnerClass @loitd
#pythonvietnam.info
Try … Finally
• try:
• raise LoiEx('I hate')
• #f = open('x')
• except IOError, e:
• print e
• finally:
• print 'I am the final'
PythonBeginnerClass @loitd
#pythonvietnam.info
Bài tập
• Lưu ý về cách thức ra bài tập
• Xây dựng một chương trình python stickers
với điều khiển luồng có bắt exception và thoát
khi người dùng bấm phím «q»
•
PythonBeginnerClass @loitd
#pythonvietnam.info

More Related Content

What's hot

Python Beginner Class day-15-networking
Python Beginner Class day-15-networkingPython Beginner Class day-15-networking
Python Beginner Class day-15-networking
Khánh Nguyễn
 
Python for the rest of life
Python for the rest of lifePython for the rest of life
Python for the rest of life
Chip Huyen
 
Oop unit 11 input và output
Oop unit 11 input và outputOop unit 11 input và output
Oop unit 11 input và output
Tráng Hà Viết
 
Bai 1 pythonvietnam.info
Bai 1   pythonvietnam.infoBai 1   pythonvietnam.info
Bai 1 pythonvietnam.info
Khánh Nguyễn
 
Oop unit 10 ngoại lệ
Oop unit 10 ngoại lệOop unit 10 ngoại lệ
Oop unit 10 ngoại lệ
Tráng Hà Viết
 
Linq net
Linq net Linq net
Linq net
NguynSang29
 
Oop unit 02 java cơ bản
Oop unit 02 java cơ bảnOop unit 02 java cơ bản
Oop unit 02 java cơ bản
Tráng Hà Viết
 
Tài liệu lập trình PHP từ căn bản đến nâng cao
Tài liệu lập trình PHP từ căn bản đến nâng caoTài liệu lập trình PHP từ căn bản đến nâng cao
Tài liệu lập trình PHP từ căn bản đến nâng cao
ZendVN
 
Oop unit 09 lập trình tổng quát
Oop unit 09 lập trình tổng quátOop unit 09 lập trình tổng quát
Oop unit 09 lập trình tổng quát
Tráng Hà Viết
 
Lớp 11 --chương 4 -- bài 11 --Kiểu mảng
Lớp 11 --chương 4 -- bài 11 --Kiểu mảngLớp 11 --chương 4 -- bài 11 --Kiểu mảng
Lớp 11 --chương 4 -- bài 11 --Kiểu mảng
Hoàng Kỳ Anh
 
Oop unit 05 một số kỹ thuật java nâng cao
Oop unit 05 một số kỹ thuật java nâng caoOop unit 05 một số kỹ thuật java nâng cao
Oop unit 05 một số kỹ thuật java nâng cao
Tráng Hà Viết
 
Lập trình Python GUI vs PySide
Lập trình Python GUI vs PySideLập trình Python GUI vs PySide
Lập trình Python GUI vs PySide
Chien Dang
 
Giao trinh PHP nang cao - Kỹ thuật đệ qui trong PHP (CH003 Bài 3)
Giao trinh PHP nang cao - Kỹ thuật đệ qui trong PHP (CH003 Bài 3)Giao trinh PHP nang cao - Kỹ thuật đệ qui trong PHP (CH003 Bài 3)
Giao trinh PHP nang cao - Kỹ thuật đệ qui trong PHP (CH003 Bài 3)
KhanhPham
 
Oop unit 04 các kỹ thuật xây dựng lớp
Oop unit 04 các kỹ thuật xây dựng lớpOop unit 04 các kỹ thuật xây dựng lớp
Oop unit 04 các kỹ thuật xây dựng lớp
Tráng Hà Viết
 
Ctdl c1
Ctdl c1Ctdl c1
Ctdl c1
Tin Trinh
 
Oop unit 08 đa hình
Oop unit 08 đa hìnhOop unit 08 đa hình
Oop unit 08 đa hình
Tráng Hà Viết
 
Lesson 04 : Actionscript 3 Overview
Lesson 04 : Actionscript 3 OverviewLesson 04 : Actionscript 3 Overview
Lesson 04 : Actionscript 3 Overview
Hallo Patidu
 
Gioi Thieu
Gioi ThieuGioi Thieu
Gioi Thieugiang
 

What's hot (20)

Python Beginner Class day-15-networking
Python Beginner Class day-15-networkingPython Beginner Class day-15-networking
Python Beginner Class day-15-networking
 
Python for the rest of life
Python for the rest of lifePython for the rest of life
Python for the rest of life
 
Oop unit 11 input và output
Oop unit 11 input và outputOop unit 11 input và output
Oop unit 11 input và output
 
Bai 1 pythonvietnam.info
Bai 1   pythonvietnam.infoBai 1   pythonvietnam.info
Bai 1 pythonvietnam.info
 
Oop unit 10 ngoại lệ
Oop unit 10 ngoại lệOop unit 10 ngoại lệ
Oop unit 10 ngoại lệ
 
Linq net
Linq net Linq net
Linq net
 
Oop unit 02 java cơ bản
Oop unit 02 java cơ bảnOop unit 02 java cơ bản
Oop unit 02 java cơ bản
 
Tài liệu lập trình PHP từ căn bản đến nâng cao
Tài liệu lập trình PHP từ căn bản đến nâng caoTài liệu lập trình PHP từ căn bản đến nâng cao
Tài liệu lập trình PHP từ căn bản đến nâng cao
 
Oop unit 09 lập trình tổng quát
Oop unit 09 lập trình tổng quátOop unit 09 lập trình tổng quát
Oop unit 09 lập trình tổng quát
 
Lect05 array
Lect05 arrayLect05 array
Lect05 array
 
Lớp 11 --chương 4 -- bài 11 --Kiểu mảng
Lớp 11 --chương 4 -- bài 11 --Kiểu mảngLớp 11 --chương 4 -- bài 11 --Kiểu mảng
Lớp 11 --chương 4 -- bài 11 --Kiểu mảng
 
Oop unit 05 một số kỹ thuật java nâng cao
Oop unit 05 một số kỹ thuật java nâng caoOop unit 05 một số kỹ thuật java nâng cao
Oop unit 05 một số kỹ thuật java nâng cao
 
Bai11
Bai11Bai11
Bai11
 
Lập trình Python GUI vs PySide
Lập trình Python GUI vs PySideLập trình Python GUI vs PySide
Lập trình Python GUI vs PySide
 
Giao trinh PHP nang cao - Kỹ thuật đệ qui trong PHP (CH003 Bài 3)
Giao trinh PHP nang cao - Kỹ thuật đệ qui trong PHP (CH003 Bài 3)Giao trinh PHP nang cao - Kỹ thuật đệ qui trong PHP (CH003 Bài 3)
Giao trinh PHP nang cao - Kỹ thuật đệ qui trong PHP (CH003 Bài 3)
 
Oop unit 04 các kỹ thuật xây dựng lớp
Oop unit 04 các kỹ thuật xây dựng lớpOop unit 04 các kỹ thuật xây dựng lớp
Oop unit 04 các kỹ thuật xây dựng lớp
 
Ctdl c1
Ctdl c1Ctdl c1
Ctdl c1
 
Oop unit 08 đa hình
Oop unit 08 đa hìnhOop unit 08 đa hình
Oop unit 08 đa hình
 
Lesson 04 : Actionscript 3 Overview
Lesson 04 : Actionscript 3 OverviewLesson 04 : Actionscript 3 Overview
Lesson 04 : Actionscript 3 Overview
 
Gioi Thieu
Gioi ThieuGioi Thieu
Gioi Thieu
 

Viewers also liked

Git Using - pythonvietnam.info
Git Using - pythonvietnam.infoGit Using - pythonvietnam.info
Git Using - pythonvietnam.info
Khánh Nguyễn
 
Slide Python Bai 2 pythonvietnam.info
Slide Python Bai 2   pythonvietnam.infoSlide Python Bai 2   pythonvietnam.info
Slide Python Bai 2 pythonvietnam.info
Khánh Nguyễn
 
Chuyen de flask -- pythonvietnam.info
Chuyen de flask  -- pythonvietnam.info Chuyen de flask  -- pythonvietnam.info
Chuyen de flask -- pythonvietnam.info
Khánh Nguyễn
 
Bottle web framwork for python
Bottle web framwork for pythonBottle web framwork for python
Bottle web framwork for python
Khánh Nguyễn
 
Introduction to WEB HTML, CSS
Introduction to WEB HTML, CSSIntroduction to WEB HTML, CSS
Introduction to WEB HTML, CSS
University of Technology
 
Một góc nhìn về chuyện khởi nghiệp của Sinh Viên Việt Nam
Một góc nhìn về chuyện khởi nghiệp của Sinh Viên Việt NamMột góc nhìn về chuyện khởi nghiệp của Sinh Viên Việt Nam
Một góc nhìn về chuyện khởi nghiệp của Sinh Viên Việt Nam
Imr Hung
 
Training android
Training androidTraining android
Training android
University of Technology
 
Software Development Process Seminar at HUI
Software Development Process Seminar at HUISoftware Development Process Seminar at HUI
Software Development Process Seminar at HUI
KMS Technology
 
Training Google Drive and Hangouts.pptx
Training Google Drive and Hangouts.pptxTraining Google Drive and Hangouts.pptx
Training Google Drive and Hangouts.pptx
University of Technology
 
An Introduction of Apache Hadoop
An Introduction of Apache HadoopAn Introduction of Apache Hadoop
An Introduction of Apache Hadoop
KMS Technology
 
Training javascript 2012 hcmut
Training javascript 2012 hcmutTraining javascript 2012 hcmut
Training javascript 2012 hcmut
University of Technology
 
Design patterns tutorials
Design patterns tutorialsDesign patterns tutorials
Design patterns tutorials
University of Technology
 
Training python (new Updated)
Training python (new Updated)Training python (new Updated)
Training python (new Updated)
University of Technology
 
Am hoc kien truc
Am hoc kien trucAm hoc kien truc
Am hoc kien truc
Dang Lam
 
Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control System
KMS Technology
 
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
KMS Technology
 
Phương pháp học đại học
Phương pháp học đại họcPhương pháp học đại học
Phương pháp học đại học
University of Technology
 

Viewers also liked (17)

Git Using - pythonvietnam.info
Git Using - pythonvietnam.infoGit Using - pythonvietnam.info
Git Using - pythonvietnam.info
 
Slide Python Bai 2 pythonvietnam.info
Slide Python Bai 2   pythonvietnam.infoSlide Python Bai 2   pythonvietnam.info
Slide Python Bai 2 pythonvietnam.info
 
Chuyen de flask -- pythonvietnam.info
Chuyen de flask  -- pythonvietnam.info Chuyen de flask  -- pythonvietnam.info
Chuyen de flask -- pythonvietnam.info
 
Bottle web framwork for python
Bottle web framwork for pythonBottle web framwork for python
Bottle web framwork for python
 
Introduction to WEB HTML, CSS
Introduction to WEB HTML, CSSIntroduction to WEB HTML, CSS
Introduction to WEB HTML, CSS
 
Một góc nhìn về chuyện khởi nghiệp của Sinh Viên Việt Nam
Một góc nhìn về chuyện khởi nghiệp của Sinh Viên Việt NamMột góc nhìn về chuyện khởi nghiệp của Sinh Viên Việt Nam
Một góc nhìn về chuyện khởi nghiệp của Sinh Viên Việt Nam
 
Training android
Training androidTraining android
Training android
 
Software Development Process Seminar at HUI
Software Development Process Seminar at HUISoftware Development Process Seminar at HUI
Software Development Process Seminar at HUI
 
Training Google Drive and Hangouts.pptx
Training Google Drive and Hangouts.pptxTraining Google Drive and Hangouts.pptx
Training Google Drive and Hangouts.pptx
 
An Introduction of Apache Hadoop
An Introduction of Apache HadoopAn Introduction of Apache Hadoop
An Introduction of Apache Hadoop
 
Training javascript 2012 hcmut
Training javascript 2012 hcmutTraining javascript 2012 hcmut
Training javascript 2012 hcmut
 
Design patterns tutorials
Design patterns tutorialsDesign patterns tutorials
Design patterns tutorials
 
Training python (new Updated)
Training python (new Updated)Training python (new Updated)
Training python (new Updated)
 
Am hoc kien truc
Am hoc kien trucAm hoc kien truc
Am hoc kien truc
 
Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control System
 
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
 
Phương pháp học đại học
Phương pháp học đại họcPhương pháp học đại học
Phương pháp học đại học
 

Recently uploaded

BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
Nguyen Thanh Tu Collection
 
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docxVăn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
metamngoc123
 
PLĐC-chương 1 (1).ppt của trường ĐH Ngoại thương
PLĐC-chương 1 (1).ppt của trường  ĐH Ngoại thươngPLĐC-chương 1 (1).ppt của trường  ĐH Ngoại thương
PLĐC-chương 1 (1).ppt của trường ĐH Ngoại thương
hieutrinhvan27052005
 
FSSC 22000 version 6_Seminar_FINAL end.pptx
FSSC 22000 version 6_Seminar_FINAL end.pptxFSSC 22000 version 6_Seminar_FINAL end.pptx
FSSC 22000 version 6_Seminar_FINAL end.pptx
deviv80273
 
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdfCau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
HngMLTh
 
THONG BAO nop ho so xet tuyen TS6 24-25.pdf
THONG BAO nop ho so xet tuyen TS6 24-25.pdfTHONG BAO nop ho so xet tuyen TS6 24-25.pdf
THONG BAO nop ho so xet tuyen TS6 24-25.pdf
QucHHunhnh
 
Giải phẫu tim sau đại học- LÊ QUANG TUYỀN
Giải phẫu tim sau đại học- LÊ QUANG TUYỀNGiải phẫu tim sau đại học- LÊ QUANG TUYỀN
Giải phẫu tim sau đại học- LÊ QUANG TUYỀN
linh miu
 
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
Nguyen Thanh Tu Collection
 
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdfSLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
UyenDang34
 
trắc nhiệm ký sinh.docxddddddddddddddddd
trắc nhiệm ký sinh.docxdddddddddddddddddtrắc nhiệm ký sinh.docxddddddddddddddddd
trắc nhiệm ký sinh.docxddddddddddddddddd
my21xn0084
 
Halloween vocabulary for kids in primary school
Halloween vocabulary for kids in primary schoolHalloween vocabulary for kids in primary school
Halloween vocabulary for kids in primary school
AnhPhm265031
 
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang ThiềuBiểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
lamluanvan.net Viết thuê luận văn
 
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docxBÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
HngL891608
 
40 câu hỏi - đáp Bộ luật dân sự năm 2015 (1).doc
40 câu hỏi - đáp Bộ  luật dân sự năm  2015 (1).doc40 câu hỏi - đáp Bộ  luật dân sự năm  2015 (1).doc
40 câu hỏi - đáp Bộ luật dân sự năm 2015 (1).doc
NguynDimQunh33
 
insulin cho benh nhan nam vien co tang duong huyet
insulin cho benh nhan nam vien co tang duong huyetinsulin cho benh nhan nam vien co tang duong huyet
insulin cho benh nhan nam vien co tang duong huyet
lmhong80
 
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
khanhthy3000
 
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptxLỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
12D241NguynPhmMaiTra
 
Smartbiz_He thong MES nganh may mac_2024june
Smartbiz_He thong MES nganh may mac_2024juneSmartbiz_He thong MES nganh may mac_2024june
Smartbiz_He thong MES nganh may mac_2024june
SmartBiz
 

Recently uploaded (18)

BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
 
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docxVăn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
 
PLĐC-chương 1 (1).ppt của trường ĐH Ngoại thương
PLĐC-chương 1 (1).ppt của trường  ĐH Ngoại thươngPLĐC-chương 1 (1).ppt của trường  ĐH Ngoại thương
PLĐC-chương 1 (1).ppt của trường ĐH Ngoại thương
 
FSSC 22000 version 6_Seminar_FINAL end.pptx
FSSC 22000 version 6_Seminar_FINAL end.pptxFSSC 22000 version 6_Seminar_FINAL end.pptx
FSSC 22000 version 6_Seminar_FINAL end.pptx
 
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdfCau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
 
THONG BAO nop ho so xet tuyen TS6 24-25.pdf
THONG BAO nop ho so xet tuyen TS6 24-25.pdfTHONG BAO nop ho so xet tuyen TS6 24-25.pdf
THONG BAO nop ho so xet tuyen TS6 24-25.pdf
 
Giải phẫu tim sau đại học- LÊ QUANG TUYỀN
Giải phẫu tim sau đại học- LÊ QUANG TUYỀNGiải phẫu tim sau đại học- LÊ QUANG TUYỀN
Giải phẫu tim sau đại học- LÊ QUANG TUYỀN
 
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
 
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdfSLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
 
trắc nhiệm ký sinh.docxddddddddddddddddd
trắc nhiệm ký sinh.docxdddddddddddddddddtrắc nhiệm ký sinh.docxddddddddddddddddd
trắc nhiệm ký sinh.docxddddddddddddddddd
 
Halloween vocabulary for kids in primary school
Halloween vocabulary for kids in primary schoolHalloween vocabulary for kids in primary school
Halloween vocabulary for kids in primary school
 
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang ThiềuBiểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
 
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docxBÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
 
40 câu hỏi - đáp Bộ luật dân sự năm 2015 (1).doc
40 câu hỏi - đáp Bộ  luật dân sự năm  2015 (1).doc40 câu hỏi - đáp Bộ  luật dân sự năm  2015 (1).doc
40 câu hỏi - đáp Bộ luật dân sự năm 2015 (1).doc
 
insulin cho benh nhan nam vien co tang duong huyet
insulin cho benh nhan nam vien co tang duong huyetinsulin cho benh nhan nam vien co tang duong huyet
insulin cho benh nhan nam vien co tang duong huyet
 
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
 
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptxLỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
 
Smartbiz_He thong MES nganh may mac_2024june
Smartbiz_He thong MES nganh may mac_2024juneSmartbiz_He thong MES nganh may mac_2024june
Smartbiz_He thong MES nganh may mac_2024june
 

Python Beginner Class day-03-flow

  • 1. Điều khiển luồng Th.S Trần Đức Lợi Pythonvietnam.info
  • 2. Ôn tập bài cũ • Ôn tập git – Đồng bộ – Add/rm cùng lúc • Chữa bài python-calculator • Chữa bài tập về nhà python-calculator-with- fibonacci PythonBeginnerClass @loitd #pythonvietnam.info
  • 3. Mục đích bài học • Tìm hiểu về điều khiển luồng trong python với các câu lệnh if-else, while, for, … • Cấu trúc try-catch PythonBeginnerClass @loitd #pythonvietnam.info
  • 4. Điều khiển rẽ nhánh • Đặt vấn đề: Viết thuật toán và code chương trình python18+: – Chào mừng người dùng – Hỏi năm sinh – Nếu người dùng nhỏ hơn 18 tuổi thì thông báo không đủ tuổi – Nếu đủ hoặc hơn 18 tuổi thì thông báo chào mừng PythonBeginnerClass @loitd #pythonvietnam.info
  • 5. Điều khiển rẽ nhánh if • If a == b: • Print “” • Else: • Print “” • Print “finished.” • <, <=, >, >=, != PythonBeginnerClass @loitd #pythonvietnam.info
  • 6. Điều khiển rẽ nhánh if • Biểu thức boolean dùng để điều khiển rẽ nhánh • Yêu cầu trả về giá trị True/False • Các biểu thức điều kiện chỉ đọc giá trị các biến chứ không thay đổi giá trị của biến PythonBeginnerClass @loitd #pythonvietnam.info
  • 7. Điều khiển rẽ nhánh đa quyết định • Đặt vấn đề: Viết thuật toán và code chương trình python18++: – Chào mừng người dùng – Hỏi năm sinh – Nếu người dùng nhỏ hơn 16 tuổi thì thông báo không đủ tuổi – Nếu đủ hoặc hơn 18 tuổi thì thông báo chào mừng – Nếu từ 16-18 tuổi thì thông báo nên cân nhắc PythonBeginnerClass @loitd #pythonvietnam.info
  • 8. Điều khiển rẽ nhánh if • If a == b: • Print «» • Elif b == c: • Print «» • Else: • Print «» PythonBeginnerClass @loitd #pythonvietnam.info
  • 9. Bài tập • Bài đoán số: hãy nhận dữ liệu từ người dùng và so sánh với bình phương của số đó cũng do người dùng nhập vào xem có bằng nhau không? Nếu không thì đưa ra gợi ý quá cao hoặc quá thấp.» PythonBeginnerClass @loitd #pythonvietnam.info
  • 10. Switch • Hãy sử dụng if – elif – else hoặc sử dụng dictionary • Không có câu lệnh kiểu này trong python PythonBeginnerClass @loitd #pythonvietnam.info
  • 11. Vòng lặp While • While a == b: • Print «» • Else: • Print «the loop is ended» • Print «finished.» • Hãy sử dụng vòng while để thực hiện bài toán đoán số liên tục cho đến khi bấm phím «q» PythonBeginnerClass @loitd #pythonvietnam.info
  • 12. Vòng lặp for • For i in range( 1,5): • Print «» • Else: • Print «» • Hãy sử dụng vòng for để thực hiện bài toán đoán số liên tục cho đến khi bấm phím «q» PythonBeginnerClass @loitd #pythonvietnam.info
  • 13. Câu lệnh break • Thoát khỏi vòng lặp bằng câu lệnh break • Hãy sử dụng câu lệnh break để thoát khỏi chương trình khi người dùng nhấn «q» PythonBeginnerClass @loitd #pythonvietnam.info
  • 14. Lệnh continue • Bỏ qua một số câu lệnh trong vòng loop bằng lệnh continue • Các dòng lệnh trong vòng loop và sau câu continue sẽ bị bỏ qua, không thực hiện mà chuyển sang vòng loop tiếp theo luôn PythonBeginnerClass @loitd #pythonvietnam.info
  • 15. Lệnh continue • Sử dụng câu lệnh continue để thực hiện thêm chức năng nếu người dùng nhấn «x» thì thông báo bạn đã hủy lần đoán này, và tự động sinh ra số mới. PythonBeginnerClass @loitd #pythonvietnam.info
  • 16. Exception • Exception hay ngoại lệ xảy ra theo một tình huống nào đó trong một chương trình. • Ví dụ: • - đọc file nhưng file không tồn tại • - delete file khi đang sử dụng • ... • và từ đây sinh ra khái niệm bắt ngoại lệ. PythonBeginnerClass @loitd #pythonvietnam.info
  • 17. Exception • Nên bao quanh các đoạn code “nguy hiểm” bằng đoạn try…except • Trong đoạn này, nếu try block được thực thi thì except block sẽ được bỏ qua và ngược lại • Bài pythoncalculator PythonBeginnerClass @loitd #pythonvietnam.info
  • 18. Exception • try: • f = open('x') • except: • print 'Exception occured' • print 'prog will now exit' PythonBeginnerClass @loitd #pythonvietnam.info
  • 19. Exception • try: • f = open('x') • except IOError: • print 'catched' • except: • print 'x' • print 'prog will now exit' PythonBeginnerClass @loitd #pythonvietnam.info
  • 20. Cấu trúc try-catch • d = int(raw_input("Nhap gioi han cua day fibonacci: ")) • Try: • Print «» • Except Exception, e: • Print «» PythonBeginnerClass @loitd #pythonvietnam.info
  • 21. Raise Exception • Exception có sẵn của python • try: • raise IOError() • except IOError, e: • print e • except: • print 'x' PythonBeginnerClass @loitd #pythonvietnam.info
  • 22. Try … Finally • try: • raise LoiEx('I hate') • #f = open('x') • except IOError, e: • print e • finally: • print 'I am the final' PythonBeginnerClass @loitd #pythonvietnam.info
  • 23. Bài tập • Lưu ý về cách thức ra bài tập • Xây dựng một chương trình python stickers với điều khiển luồng có bắt exception và thoát khi người dùng bấm phím «q» • PythonBeginnerClass @loitd #pythonvietnam.info