Làm thế nào để bạn trả lời câu hỏi có hoặc không trong python?

"Xin lỗi câu trả lời của bạn không được công nhận. Khởi động lại chương trình và đảm bảo bạn trả lời bằng từ Có hoặc từ Không. "]

Bằng cách thêm một câu lệnh khác, chúng tôi có thể đưa ra một số phản hồi cho người dùng cuối để cho họ biết lý do tại sao câu trả lời của họ không hợp lệ và cách họ cần trả lời câu hỏi vào lần tới

bạn nghĩ điều gì sẽ xảy ra bây giờ nếu

  • Người dùng trả lời Có ?
  • Người dùng trả lời Không?
  • Người dùng trả lời CÓ ?
  • Người dùng trả lời không?
  • Người dùng trả lời Chưa?

Giải pháp số 3Giải thích

1

2

3

4

5

6

7

8

câu trả lời = ""

trong khi [câu trả lời. ="CÓ" trả lời. ="KHÔNG"].

  câu trả lời = đầu vào["Are you over 16? [Yes or No]"].trên[]

 

nếu trả lời == "CÓ".

  in["Bạn có thể tham gia các bài học lái xe để chuẩn bị cho kỳ thi lái xe của mình. "]

elif câu trả lời == "KHÔNG".

    in["Bạn còn quá trẻ để học lái xe ô tô. "]

Sử dụng vòng lặp while, chúng tôi tiếp tục đặt câu hỏi cho đến khi người dùng nhập câu trả lời hợp lệ [Có hoặc Không]
bạn nghĩ điều gì sẽ xảy ra bây giờ nếu

  • Người dùng trả lời Có ?
  • Người dùng trả lời Không?
  • Người dùng trả lời CÓ ?
  • Người dùng trả lời không?
  • Người dùng trả lời Chưa?

Giải pháp số 4Giải thích

1

2

3

4

5

6

7

8

9

10

11

def askYesNoQuestion[câu hỏi]:

  CóKhôngTrả lời = ""

  trong khi [Trả lời CóKhông. ="CÓ" CóKhôngTrả lời. ="KHÔNG"].

    CóKhôngTrả lời = đầu vào[question].trên[]

  return YesNoAnswer

 

answer = askYesNoQuest["Bạn trên 16 tuổi]

nếu trả lời == "CÓ".

  in["Bạn có thể tham gia các bài học lái xe để chuẩn bị cho kỳ thi lái xe của mình. "]

elif câu trả lời == "KHÔNG".

    in["Bạn còn quá trẻ để học lái xe ô tô. "]

Bằng cách tạo hàm askYesNoQuestion[] của riêng mình, chúng ta có thể dễ dàng sử dụng lại hàm này mỗi khi muốn đặt câu hỏi YesNo. Trong chương trình chính của chúng tôi, nó dễ dàng như sử dụng một lệnh đầu vào. Tuy nhiên, nó hiệu quả hơn rất nhiều vì nó đảm bảo người dùng đưa ra câu trả lời hợp lệ

Giải pháp số 5Giải thích

1

2

3

4

5

6

7

8

9

10

11

12

def askYesNoQuestion[câu hỏi]:

  CóKhôngTrả lời = đầu vào[question].trên[]

  nếu CóKhôngTrả lời == "CÓ" or YesNoAnswer == "NO":

     return YesNoAnswer  

  khác.

     return askYesNoQuestion[câu hỏi]

 

answer = askYesNoQuest["Bạn trên 16 tuổi]

nếu trả lời == "CÓ".

  in["Bạn có thể tham gia các bài học lái xe để chuẩn bị cho kỳ thi lái xe của mình. "]

elif câu trả lời == "KHÔNG".

    in["Bạn còn quá trẻ để học lái xe ô tô. "]

Lần này, hàm askYesNoQuestion[] của chúng ta không sử dụng vòng lặp while mà đang sử dụng đệ quy. Nó tự gọi mình. Kiểm tra trên dòng 6 để biết lệnh gọi đệ quy tới chính nó. Và nó sẽ tiếp tục làm như vậy cho đến khi nhận được câu trả lời hợp lệ

Chủ Đề